Chuyên:Xâydngphnmmhngitng
Trng C Công Ngh Thông Tin TP.HCM
1
Gingviên:NguynNamTrung
Email:
Chuyên
Xâydngphnmmhngitng
Nidung
• Giithiuchung
• Nidungmônhc
• Hìnhthckimtravàánhgiá
• Tàiliuthamkho
Giithiuchung
Mctiêumônhc:
• Cung cpchocácsinhviêncác
kinthc chuyên sâu liên quan
nvic
xây dng phnmm theo tipcn hng itng.
• Sinh viên scgiithiu
phng pháp, k thut xây
dng phnmmtheohng itng, cbittronggiai
on
phân tích và thitk phnmm.
• Tính tinhóavà kin trúc linh hot c
aphnmmlàni dung
quan trng trong môn hcnày.
Môn tiên quyt:
• Phng pháp lptrìnhhng itng
• Nhp môn công ngh phnmm
• Có kinthcv C#
Nidungmônhc
Môn hc c chia thành 02 phn chính :
• Phn01–Xâydng phnmmhng itng
K nng phân tích, thitk và trin khai d án phnmm.
• Phn02–Môitrng và công c xây dng phnmm
K nng xây dng, cài tphnmmdatrênbnthitk.
Chuyên:Xâydngphnmmhngitng
Trng C Công Ngh Thông Tin TP.HCM
2
Phn01–XâydngphnmmHĐT
• Chng01 – Mu
• Chng02 – Yêucucangisdng
• Chng03 – Môhìnhhóayêucu
• Chng04–Phântích
• Chng05 – Thitkdliu
• Chng06 – Thitkkintrúcphnmm
• Chng07 – Thitkgiaodin
• Chng08 – Mtsvnkhác
Phn02–Môitrngvàcôngc
• Chng01–Giithiutngquan
• Chng02–XAML
• Chng03–ThitkLayout
• Chng04– Controls
• Chng05–WPFInputevents
• Chng06–DocumentsvàFileStream
• Chng07– Resources
• Chng08–Databinding
• Chng09–Styles,Templates,SkinsvàThemes
Hìnhthckimtravàánhgiá
Lý thuyt 7 im
• Thi cuik :làm án và vn áp 5 im
Làm nhóm (btbuc 5 sinh viên / nhóm).
Báo cáo và vn áp 2 im(+0.5im)
Chng trình 3 im(+0.5im)
• Thi giak
2 im
Hình thc1:vit (không dùng tài liu)
Hình thc 2 : làm bài lab
Thchành
2 im
Chuyên cn 1 im
Tàiliuthamkho
• Roger S Pressman, Roger Pressman (2004), Software Engineering: A Practitioner's
Approach
,McGrawHill Science/Engineering/Math
• Ian Sommerville (2006),
Software Engineering: (Update) (8th Edition) , Addison
Wesley
• Dennis de Champeaux, Douglas Lea, Penelope, Faure (1993).
Software
Engineering ObjectOriented System Development
, Addison Wesley
• Len Bass, Paul Clements, Rick Kazman (2003),
Software Architecture in Practice, 2
nd
edition
, Addison Wesley
• Clifton Nock (2003),
Data Access Patterns: Database Interactions in Object
Oriented Applications, Addison Wesley
• Sherif M. Yacoub, Hany H. Ammar (2003),
PatternOriented Analysis and Design:
Composing Patterns to Design Software Systems
, Addison Wesley.
• Microsoft Corporation (2003),
Enterprise Solution Patterns Using Microsoft .NET,
Microsoft Press
• Martin Fowler, David Rice, Matthew Foemmel, Edward Hieatt, Robert Mee,
Randy Stafford (2002),
Patterns of Enterprise Application Architecture, Addison
Wesley.
• Alan Shalloway, James R. Trott (2004),
Design Patterns Explained – A New
Perspective on Object Oriented Design
, Addison Wesley
• Gregor Hohpe, Bobby Woolf (2003),
Enterprise Integration Patterns: Designing,
Building
, and Deploying Messaging Solutions, Addison Wesley
Chuyên:Xâydngphnmmhngitng
Trng C Công Ngh Thông Tin TP.HCM
3
• Nguyn Nam Trung, Windows Presentation Foundation, 2011
• Adam Nathan (2010), WPF 4 Unleashed, SAMS
• Matthew MacDonald, Pro WPF in C# 2010:
Windows Presentation Foundation in .NET 4.0, Apress
•
/>LearnAboutDesktopDevelopment
•
WPFTechnicalCommunity
•
/>MicrosoftExpressionStudio
•
DesignerorientatedtutorialsforExpressionBlend
Tàiliuthamkho Tàiliuthamkho
• />XAML Overview
•
/>Layout System
•
/>WPF Controls Gallery Sample
•
/>Routed Events Overview
•
/>Commanding Overview
•
/>Flow Document Overview
Tàiliuthamkho
• />Annotations Overview
•
/>Resources Overview
•
/>Data Binding (WPF)
•
/>Styling and Templating
Q&A
Nid
u
u
ngc
h
h
uyên
Chng
Chng
Chng
Chng
Chng
Chng
Chng
Chng
Xây
d
h
Mđu
Yêucu
c
Môhình
Phântíc
h
Thitk
Thitk
Thitk
Mtsv
d
ng
p
ng
c
angis
hóayêucu
h
dliu
kintrúcph
giaodin
nđkhác
P
p
hn
m
it
dng
nmm
HNI
m
m
ng
Chuong1:Mu
Trng C Công Ngh Thông Tin TP.HCM
1
Chng1
M
u
Ngun:TSTrnMinhTrit
Hiuchnhvàtrìnhbày:NguynNamTrung
Email:
Nidung
• KháinimvPhnmm
• KháinimvChtlngphnmm
•
Khái nim v Công ngh phn mm
•
Khái
nim
v
Công
ngh
phn
mm
• KháinimvQuytrìnhphnmm
Kháinimvphnmm
Víd:xétmtsphnmmsau
Phnmmqunlýhcsinhcp3.
Ph
nm
mqu
nlýthvin.
Phnmmqunlýnhàsách.
Phnmmqunlýkháchsn.
Phnmmqunlýphòngmcht.
Phnmmqunlýstitkim.
Phnm
mqunlýgiivôchbóngá.
Phnmmqunlýbánvéchuynbay.
Phnmmqunlýcácilý.
Phnmmxpthikhóabiu
…
Kháinimvphnmm(tt)
Phnmmdi góc nhìn cangis dng:
• Chng trình thcthictrênmáy tính hoc các thitb
chuyên
dng
khác
nhm
h
tr
cho
các
nhà
chuyên
môn
trong
chuyên
dng
khác
,
nhm
h
tr
cho
các
nhà
chuyên
môn
trong
tng lnh vc chuyên ngành thchin tthn các thao tác nghip
v
camình
Chuong1:Mu
Trng C Công Ngh Thông Tin TP.HCM
2
Kháinimvphnmm(tt)
Môi trng trinkhaiphnmm
• Máy tính: Desktop, Laptop, Tablet PC…
hi
b
hê
d
• T
hi
t
b
c
h
uy
ê
n
d
ng:
Thitb di ng: PDA, Pocket PC, Đinthoiding…
Các thitb chuyên dng khác: settop box, router, firewall
(phncng…)
Htrlàmtthncácthaotácnghipv:
Ti h hó
hi hi
là th ô
•
Ti
n
h
c
hó
a ng
hi
pv
hi
n
ang
là
m
th
c
ô
ng
• Citin chcnngnghipvhinangcthchintrênmáy
tính
• Đra,xâydngvàtrinkhai chcnngnghipvmi
Kháinimvphnmm(tt)
Phnmmdi góc nhìn ca chuyên viên Tin hc:
• Đây là mth thng bao gm3thànhphnc bn:
Thành ph
ngiaoti
p
Thành phnx lý
Thành phnlutr
• Cn cxâydng thchintheoyêucucangis dng
Kháinimvphnmm(tt)
Thành phngiaotip(Giaodin):
• Cho phép tipnhn các yêu cuv vics dng phnmmt
n
g
is dn
g
(
chncôn
g
vicmunthchinvàcun
g
c
p
các
g
g
(
g
g
p
d liungunliênquanncôngvic ó), t các thitb thu thp
d liu(cân,nhitk,t bào quang in…), hoct các phn
mmkhác.
• Cho phép
trình bày các ktqu cavicthchincácyêucucho
ngidùng(ktqu cacôngvickhithchintrênmáytính)
hoc iukhinhot ng các thitbiukhin(óng/m
ca,
dùn
g
ha
y
cho chu
y
n n
g
…)
g
y
y
g
• Mtcáchtng quát, thành phngiaotip cho phép nhp/xut
thông tin
cùng vihìnhthc trình bày/giao tiptng ng.
• Mc tiêu chính ca thành phnnàylàa thông tin t th gii
bên ngoài phnmm(ngis dng, các thitb,phnmm
khác…) và bên trong, hocngcli.
Kháinimvphnmm(tt)
Thành phnx lý:
• Kimtratínhhpl ca thông tin ngun c cung cpt ngi
dùn
g
theo các
q
u
y
nh ràn
g
bu
ctron
g
th
g
iith
c
g
qy
g
g
g
Ví d:ch cho mnti a 3 quynsách,milphc không quá
50 hc sinh…
• Tinhànhx lý cho ra ktqu mong itheoquy nh tính toán
có sn
trong th giithc
Ví d: quy tctínhtinphtkhitr sách v, quy nh tính tin
in, tr góp khi mua nhà…
• Hoc ti
nhànhx
lý theo thutgi
it
xu
t
Ví d:xpthikhóabiutng, nén nh, phát sinh ncc
ca máy tính…
Chuong1:Mu
Trng C Công Ngh Thông Tin TP.HCM
3
Kháinimvphnmm(tt)
Thành phnx lý:
• Vicx lý da trên thông tin ngunt
ngis dng cung cp
Ví
d
:
tính
nghim
phng
trình
bc
2
da
trên
các
h
s
nhp
Ví
d
:
tính
nghim
phng
trình
bc
2
da
trên
các
h
s
nhp
vào
hoc
d liulutr có sn
Ví d:tínhtnkhoda trên các phiunhpxut ãlutr
hoc
c hai
Ví d:tínhtinphtdatrênngàytr sách cnhpvàovà
thôn
g
tin v loisáchã clutr
g
• Vicx lý cho ra ktqu có th dùng xut cho ngidùngxem
qua thành phngiaodin
,haylutr li qua thành phnlutr,
hoc
c hai
Kháinimvphnmm(tt)
Mtcáchtng quát, thành phnx lý là h thng chuyên x lý tính
toán, bin id liu,
•
Dùng
thông
tin
ngun
t
các
thành
phn
giao
din
(
chc
nng
•
Dùng
thông
tin
ngun
t
các
thành
phn
giao
din
(
chc
nng
nhp)haythànhphnd liu(chcnng c);
• Kimtratínhhpl (chcnng kimtra)vàsauótinhànhx
lý (chcnng x lý) – nucnthit
• Đ cho ra ktqu sc trình bày thông qua thành phngiao
din(
chcnng xut)hoclutr litrongthànhphnd liu
(
chcnng ghi)
Kháinimvphnmm(tt)
Thành phnlutr (thành phnd liu)
• Cho phép lutr li(chcnng ghi)cácktquãx lý
V
í
d:Vicmnsáchã ckimtrahpl,bng lng
tháng ã ctính
trên b nh ph vit chclutrcxácnh trc
Ví d:tptincócutrúc,tptinnh phân, c s d liu
• Cho phép truy xutli(
chcnng c)cácd liu ãlutr
phcv cho các hàm x lý tng ng
Mt
áh
t
át
thà h
h
d
li
là
h
th
hê
•
Mt
c
á
c
h
t
ng qu
át
thà
n
h
p
h
n
d
li
u
là
h
th
ng c
h
uy
ê
n
c
ghi d liu cùng vimôhìnht chclutr d liutng ng.
Mc tiêu chính ca thành phnnàylà
chuyn id liu giab
nh chính và b nh ph
Kháinimvphnmm(tt)
Cácloi
phnmmkhác?
Chuong1:Mu
Trng C Công Ngh Thông Tin TP.HCM
4
Kháinimlpphnmm
Lpphnmm:
• Lpphnmmlàh thng các phnmmtrêncùng mtlnh vc
hot
ng
nào
ó
hot
ng
nào
ó
• Do cùng lnh vchot ng nên các phnmm cùng lpthng
có
cutrúcvà chcnng tng t nhau
Mctiêuca ngành Công ngh Phnmm
• Xây dng cphnmm có chtlng
•
D
dàng
xây
dng
phn
mm
mi
t
các
phn
mm
có
sn
cùng
D
dàng
xây
dng
phn
mm
mi
t
các
phn
mm
có
sn
cùng
lp
Chtlngphnmm
Conngi
Tính úng n:
• Đy
PhnPhnmmmm
• Chính xác
Tính úng
n
Phncng Phnmmkhác
DigócnhìncaNgisdng
Chtlngphnmm
Conngi
Tính tindng:
D
h
Tính tin
dng
Tí h ú
PhnPhnmmmm
•
D
h
c
• D s dng
• Giao dintrc quan
• T nhiên
•
Tí
n
h
ú
ng
n
Phncng Phnmmkhác
DigócnhìncaNgisdng
Chtlngphnmm
Conngi
Tínhhiuqu:
Ti u s dng CPU*
Tí h ú
Tính hiu
qu
PhnPhnmmmm
Ti
u
s
dng
CPU*
Tiusdngbnh*
Tiusdngthitb
•
Tí
n
h
ú
ng
n
• Tínhtindng
Phncng Phnmmkhác
DigócnhìncaNgisdng
Chuong1:Mu
Trng C Công Ngh Thông Tin TP.HCM
5
Chtlngphnmm
Conngi
Tínhtngthích:
It/Etd li
Tí h ú
PhnPhnmmmm
I
mpor
t/E
xpor
t
d
li
u
Tngtác
•
Tí
n
h
ú
ng
n
• Tínhtindng
• Tínhhiuqu
Tính
tng
thích
Phncng Phnmmkhác
DigócnhìncaNgisdng
Chtlngphnmm
Conngi
Tính tinhóa:mttrong
các tính cht quan trng
Tí h ú
PhnPhnmmmm
nht c quan tâm
xem xét trong ngành
Công ngh Phnmm
•
Tí
n
h
ú
ng
n
• Tínhtindng
• Tínhhiuqu
• Tínhtngthích
Phncng Phnmmkhác
DigócnhìncaNgisdng
Tính tin
hóa
Chtlngphnmm
Conngi
• Tínhtinhóa
Tí h ú
PhnPhnmmmm
•
Tí
n
h
ú
ng
n
• Tínhtindng
• Tínhhiuqu
• Tínhtngthích
• …………
Phncng Phnmmkhác
DigócnhìncaNgisdng
Chtlngphnmm
Tính d kimtra:vickim tra các thành phn phù hpvi
yêu cuphnmmlàd dàng nhtcóthc
Tính d sali: khi có s không phù hp(soviyêucu)
trong quá trình kimtramt thành phn, vic phát hiu chính
xác “v trí li” và sali là nhanh nhtcóthc.
Tính d botrì:khicnnângcp, citinmt thành phn
(theo yêu cumi), viccpnhtphnmm là nhanh, chính
xác nhtcóthcvàcbitlàc gng hnchnh
hng
n
các
thành
phn
khác
hng
n
các
thành
phn
khác
Tính tái s dng: các thành phn ãthchincóth dùng
litrongcácphnmm cùng lp(hoc cùng lnh vc) vithi
gian và công scítnhtcóthc
………
DigócnhìncaNgisdng
Chuong1:Mu
Trng C Công Ngh Thông Tin TP.HCM
6
SpháttrincaCôngnghphnmm
Giaion1(1950–gia1960)
• Xlýtheolô,xlýtptrung,ítxlýphântán,ítsaiphnmm
Giaion2(tgia1960ngia1970)
• Hthngachngtrìnhvàanguidùng
• Btucuc“khnghong”phnmm
Giaion3(tgia1970ngia1980)
• S
pháttrinvàsdngrngrãimáytínhcánhân
• Spháttrincacáccôngtyphnmm
Giaion4(tgia1980nnay)
• Phncngngàycàngpháttrin
• Hthngphnmmngàycàngadng,phongphú,xlýngàycàng
phctp,côngnghngàycàngpháttrin…
Cuckhnghongphnmm
Slngcácphnmmtngvt(dospháttrincaphncng:
tngkhnng,giáthànhh)
Cóquánhi
ukhuy
ti
mtrongcácph
nm
mcdùngtrongxã
hi:
• Thchinkhôngúngyêucu(tínhtoánsai,khôngnnh…)
• Thigianbotrìnângcpquálâu,chiphícao,hiuquthp
• Khósdng
• Thchinchm
Khô h i d li i á h
•
Khô
ngc
h
uy
n
i
d
li
ug
i
ac
á
cp
h
nm
m
• …
Cuckhnghongphnmm
Mts ktlun:
• Victng vts lng phnmmlàiuhplývàs còn tip
din
din
• Các khuyt imcaphnmmcóngungc chính t phng
pháp, cách thc và quy trình tinhànhxâydng phnmm:
Cmtính:mingitheomtphng pháp riêng
Thô s, ngin:ch tp trung vào viclp trình mà ít quan tâm
ncáccôngviccn làm khác (khosáthintrng, phân tích
yêu cu, thitk…)
Th công:cònthiucáccôngc h tr quy trình phát trin
Côngnghphnmm
Khái nim:
• Công ngh phnmm là ngành khoa hcnghiêncuv vicxây
dng
các
phn
mm
có
cht
lng
trong
thi
gian
và
chi
phí
hp
lý
dng
các
phn
mm
có
cht
lng
trong
thi
gian
và
chi
phí
hp
lý
Côngnghphnmm
Côngc
Quytrình
Phngpháp
Chuong1:Mu
Trng C Công Ngh Thông Tin TP.HCM
7
Côngnghphnmm
Các itng nghiên cuca Công ngh phnmm:
• Quy trình phnmm:H thng các giai on mà quá trình phát
trin
p
hnmm
p
hitri
q
ua
,
vimi
g
iai o
ncnxác
nh rõ:
p
p
q,
g
Mctiêu,ktqu nhnt giai ontrc ó,
Ktqu chuyngiaochogiaionk tip
• Phng pháp phát trinphnmm: H thng các hng dncho
phép tng bcthchinmtgiaionnàoó trong quy trình
phnmm
• Công c và Môi trng phát trinphnmm:
• H thng các phnmmtr giúp trong lnh vcxâydng phn
mm
• H tr các chuyên viên tin hctrongcácbcxâydng phn
mmtheomtphng pháp nào óvimt quy trình c
chntrc
Quitrìnhthácnc
Xác nh
Khosát
Hintrng
Cáchotng
trongthgiithc
Cácyêucu
Xác
nh
Yêucu
Phântích
Thitk
Càit
MôhìnhThgiithc
Môhìnhphnmm
Phnmm
h
Kimchng
Trinkhai
Waterfall
P
h
nm
m
“chtlng”
Quitrìnhthácnccitin
Xác nh
Khosát
Hintrng
Xác
nh
Yêucu
Phântích
Thitk
Càit
Kimchng
Trinkhai
Waterfall
QuitrìnhPrototype
Xácnh
yêucu
“Thitk
nhanh”
Xâydng
Prototype
Đánhgiávà
xácnhrõyêucu
Pháttrin
phnmm
Chuong1:Mu
Trng C Công Ngh Thông Tin TP.HCM
8
Quitrìnhxonc
Tipxúc
Lpkhoch
Kháchhàng
PhântíchriroĐánhgiá
cakháchhàng
Phântích,thitk
Xâydng
vàtrinkhai
Q&A
Chng2:Yêucucangisdng
Trng C Công Ngh Thông Tin TP.HCM
1
Chng2
Yêuc
uc
angis
dng
Ngun:TSTrnMinhTrit
Hiuchnhvàtrìnhbày:NguynNamTrung
Email:
Nidung
Giaionkhosáthintrngvàxácnhyêucu
• Hintrngtchc
• Hintrngnghipv
• HintrngTinhc(phncng,phnmm,conngi)
Xácnhvàthuthpyêucu:
• Phânloiyêucu:
Yêucuchcnng:Lutr,tracu,tínhtoán,ktxut
Yêucuphichcnng
• Kthutthuthpyêucu:
Phngvn
Bngcâuhi
Nghiêncucáctàiliu
Quansátthct
Phântíchthitknhóm(JAD)
Giaionkhosáthintrngvàxácnhyêucu
• Hintrng t chc
• Hintrng nghipv
• Hi
ntr
n
g
Tin h
c
(p
hncn
g,
p
hnmm
,
con n
g
i
)
g
(p
g,
p
,
g )
Hintrngtchc
• Đini: Ccutchcnib
Bnthântchclàmththng,cóccutchc
Sccutchcnib
Cáchnhìntngthv1tchc
• Đingoi:
Tchc Môitrn
g
catchc
g
Chng2:Yêucucangisdng
Trng C Công Ngh Thông Tin TP.HCM
2
Giaionkhosáthintrngvàxácnhyêucu
• Hintrng t chc
• Hintrng nghipv
• Hi
ntr
n
g
Tin h
c
(p
hncn
g,
p
hnmm
,
con n
g
i
)
g
(p
g,
p
,
g )
Hintrngnghipv
o Hiu cquytrìnhnghipv:Mctiêuquantrng
nhtcakhosáthintrng
o Có bao nhiêu nghipv, bao nhiêu quy trình?
Di góc nhìn cangilàmqunlý,khôngphica
chuyên viên Tin hc
o Nghipvcthchinnh th nào?
Các công on, b phn liên quan…
o Tnsut? Thi imthchin
Nghipv có thng xuyên cthchinhay
không?
Mingày,mitun, mi tháng…?
Hintrngnghipv(tt)
o Khilng tác v/quyt nh?
o
Đánh
giá
nghip
v
hin
ti
o
Đánh
giá
nghip
v
hin
ti
Cncónhng nhnxétcanhng ngichuyênmôn
trong gung máy công tác hinti
o Có vn /khó khngìhintihaykhông?Nguyên
nhân?
Vn /khó khn clpvicôngngh,ch liên quan
hê
ô
hi
thì
ii
t
nc
h
uy
ê
nm
ô
nng
hi
pv
thì
c
ng
ii
quy
t
ngay
Giaionkhosáthintrngvàxácnhyêucu
• Hintrng t chc
• Hintrng nghipv
• Hi
ntr
n
g
Tin h
c
(p
hncn
g,
p
hnmm
,
con n
g
i
)
g
(p
g,
p
,
g )
Chng2:Yêucucangisdng
Trng C Công Ngh Thông Tin TP.HCM
3
HintrngTinhc
• Phncng:
Các thitb hinti,
S
lng,
S
lng,
Cu hình,
V trí (vtlý),
Tình hình ktnimng,
Loiktni…
• Phnmm:
i
hà h
H
i
u
hà
n
h
H quntr CSDL
Các phnmmtiníchkhác
• Con ngi:
Trình chuyên môn Tin hc
Xácnhvàthuthpyêucu
Phânloiyêucu
Yêucuchcnng:
• Lutr
• Trac
u
• Tínhtoán
• Ktxut
Yêucuphichcnng
• ?
Kthutthuthpyêucu
• Phngvn
• Bngcâuhi
• Nghiêncucáctàiliu
• Quansátthct
• Phântíchthitknhóm(JAD)
• …
Chng2:Yêucucangisdng
Trng C Công Ngh Thông Tin TP.HCM
4
Kthutthuthpyêucu–Phngvn
Phngvncánhân/phngvnnhóm?
• Phngvncánhân
• Phngvnnhóm
Phngvntdo/phngvncónhhng?
• Phngvntdo
Ngichicócmgiácthoimái,cungcp
nhiu thông tin sâu sc
nhiu
thông
tin
sâu
sc
Nguyc:khôngcócnhngthôngtincnthit,
thôngtinkhóhthngc
Kthutthuthpyêucu–Phngvn
Phngvntdo/phngvncónhhng?
• Phngvncónhhng
Ngi chicóth cmthy không thoimái,ít
có kh nng ghi nhn cnhnxét,ýkin, suy ngh
riêng cangi cphng vn, ít cmnhn c
thái cahivihintrng.
Cóthnhhngnidungcntìmhiu,cóthh
thng hóa các vn ghi nhn c
thng
hóa
các
vn
ghi
nhn
c
Kthutthuthpyêucu–Phngvn
• Làmvicvicplãnhonmmctiêucah
thngphnmmcnxâydng,nhngitngcn
h
p
h
ngv
n
• Yêucucplãnhothôngbáoxungcácphòngban,
nvhptác
• Phântíchxácnhúngvànhngitngcn
phngvn
•
Hn lch làm vic
Hn
lch
làm
vic
• Xácnhtrcvtrí/tráchnhimcangispphng
vn
Kthutthuthpyêucu–Phngvn
• Khitìmhiu,cnghinhncácthôngtin:
Nidung:cáigì?
Baogicó:thigian+thihn
Bngcáchnàocónidungthôngtinó
Nidungódnggì?
Đánhgiácangicphngvnvtìnhhìnhhin
tithchi
nnghipv
• Khôngnên:
Đanhnxétcánhâncangiphngvn
Dùngthutng/ngônngTinhc
Chng2:Yêucucangisdng
Trng C Công Ngh Thông Tin TP.HCM
5
Kthutthuthpyêucu–Bngcâuhi
• Phitrìnhbàyrõ:
Mcíchcabngcâuhi,
Mcíchs
dngnhngthôngtintrongb
ngcâu
hi,
Tínhbomtthôngtintrli(khôngtitlailàngi
cungcpthôngtin,khônglrangoàitchc…)
• Hngdncáchin:rtcnthit,cnl
uýtránh
h h
h
i
un
h
m
• Thihntrv
Cnnhckhignnthihn
Kthutthuthpyêucu–Bngcâuhi
• Câuhitrìnhbàyrõràng
• Hìnhthcbngcâuhiphiddàngxlýtng
• Cndànhchghicâutrli.
Thêmchcholibình
Khôngphichcuitrang,haycuibngcâuhi,
Nêndkinnhngcâuhinàoscóýkinthêmthì
nêncó
snchghilibìnhngaydicâuhió)
Kthutthuthpyêucu–Nghiêncutàiliu
• Cáctàiliu(cóthtìmhiunhngvnbnchung)
• Nhngquynhnib
• Cácbáocáoliênquan
• Nhngquynhvquytrìnhnghipv
Rtkhócóyvnbnquynhvquytrình
nghipv
ĐnvtchunISO?
h h “b hà h ” !!!
• N
h
ngquy
n
h
“b
tt
hà
n
h
v
n
”
!!!
• Thngdtinhànhhnkthutphngvnhaybng
câuhi
• Thngctinhànhtrclàmcschunbcho
vicphngvnhaydùngbngcâuhi
Kthutthuthpyêucu–Quansátthct
• Tinhànhsaucùng(nucnthit)
• Kimtral
i:
Đãhiuúngnghipvhinti?
Cónhngngoil?
Pháthinnhngkhókhn,lhngtrongquytrình
nghipv
Phântíchthitknhóm(JAD–JointApplicationDesign)
Chng2:Yêucucangisdng
Trng C Công Ngh Thông Tin TP.HCM
6
Q&A
Chng3:Môhìnhhóayêucu
Trng C Công Ngh Thông Tin TP.HCM
1
Chng3
Môhìnhhóayêuc
u
Ngun:TSTrnMinhTrit
Hiuchnhvàtrìnhbày:NguynNamTrung
Email:
Nidung
Mô hình hóa yêu cu:
• Lc Usecase
•
Khái
nim
Actor
và
Usecase
•
Khái
nim
Actor
và
Usecase
• Ví d
Mô hình hóa các dòng d liucamiUsecase
• GiithiuMôhìnhDFD
• S dng mô hình DFD mô hình hóa yêu culu
tr
tra
cu
tính
toán
kt
xut
tr
,
tra
cu
,
tính
toán
,
kt
xut
Mu
Đtvn:
• Các mô t v yêu cutronggiaionxácnh yêu cu:
Ch
mô
t
ch
yu
các
thông
tin
liên
quan
n
vic
Ch
mô
t
ch
yu
các
thông
tin
liên
quan
n
vic
thchincácnghipv trong th giithc, cha
th hinrõnétvic
thchin các nghipv trên
máy tính
Mô t thông quá các vnbn d gây ra nhmln và
không trc quan
Môhìnhhóayêucu
KháinimActor
TácnhânBÊNNGOÀI hthng
Cótngtác vihthng
PhnPhnmmmm
Conngi
ê
Phncng Phnmmkhác
T
ê
n Acto
r
Chng3:Môhìnhhóayêucu
Trng C Công Ngh Thông Tin TP.HCM
2
Actor Nhómngisdng
TácnhânBÊNNGOÀI hthng
Cótngtác vihthng
PhnPhnmmmm
Conngi
ê
Phncng Phnmmkhác
T
ê
n Acto
r
Víd1:XétphnmmQunlýhcsinhcpIII
STT Yêucu
1Tipnhnhcsinh
2
Lp danh sách lp
Nhómngidùng
Giáov?
Giáo v?
2
Lp
danh
sách
lp
3Tracuhcsinh
4Nhnbngimmôn
5Xembáocáotngkt
6Thayiquynh
Giáo
v?
Mingi?Phhuynh?Hcsinh?
Giáoviên?Giáov?
Bangiámhiu?
Bangiámhiu?Quntrhthng?
Mt nhóm ngi dùng tng ng vi mtActor
MiNhómngi dùng (Actor) c quyns dng mt hay nhiuchc
nng trong h thng
Mtchcnng
có th cho phép nhiuNhómngi dùng s dng
Nhiu nhóm ngi dùng có cùng các quynhnging nhau
Nênxétlà1ActorhaynhiuActor?
Vicxácnh Actor ph thuc
ng cnh và quy trình thct
Víd2:XétphnmmQunlýthvin
STT Yêucu
1Lpthcgi
Nhómngidùng
Thth
2Nhnsáchmi
3Tracuhcsinh
4Lpphiumn
5Nhntrsách
6Thayiquynh
Thth
Thth?Đcgi?Kháchbtk?
Thth
Thth
Thth?Quntrhthng?
Actor Phncngngoivi
TácnhânBÊNNGOÀI hthng
Cótngtác vihthng
PhnPhnmmmm
Conngi
ê
Phncng Phnmmkhác
T
ê
n Acto
r
Chng3:Môhìnhhóayêucu
Trng C Công Ngh Thông Tin TP.HCM
3
Víd
PhnmmqunlýSiêuth:
• Đcthôngtintthitbcmãvch
Phn mm qun lý ca tng:
Các thit b ngoi vi
Phn
mm
qun
lý
ca
t
ng:
• Đcthôngtintcamera
• Phátlnhiukhinmca
Phnmmqunlýravàocácphòngtrongcôngs
• Đctínhiutuctht
Phá l h i khi
Các
thit
b
ngoi
vi
màphnmm
cntngtác
•
Phá
t
l
n
h
i
u
khi
nm
c
a
Phnmmchngtrm
• Đctínhiutcamera,sensor
• Phátlnhiukhinraloa,èn,inthoi…
Cócnlitkê
ttcthitbngoivi?
Actor Phnmmkhác
TácnhânBÊNNGOÀI hthng
Cótngtác vihthng
PhnPhnmmmm
Conngi
ê
Phncng Phnmmkhác
T
ê
n Acto
r
Víd
• Ktxut/npdliutExcel
• Ktxutdliubáocáoraphnmmgiemail
(i f lk lk )
(
M
i
croso
f
tOut
l
oo
k
,Out
l
oo
k
Express…
)
• Phnmmtrunggianktnichuyniemailt
dngWebbasedsangPOP3(vídYahoo!Pop)
• …………
KháinimUseCase
•Mt UseCase là mtchuicáchànhng mà h thng
th
chi
n man
g
l
im
tkt
q
u
q
uan sát
c ivi
UseCase
g
q
q
actor.
•Cóth hiumtUseCase là mt
chcnng cah
thng
,mangmt ýnghanht nh ivingi dùng
Chng3:Môhìnhhóayêucu
Trng C Công Ngh Thông Tin TP.HCM
4
Víd1:XétphnmmQunlýhcsinhcpIII
STT Yêucu
1
Tip nhn hc sinh
1
Tip
nhn
hc
sinh
2Lpdanhsáchlp
3Tracuhcsinh
4Nhnbngimmôn
5Xembáocáotngkt
6
Thay i quy nh
Baogmctínhnng
Thêmmi,Xóa,vàSa
13
6
Thay
i
quy
nh
Có bao nhiêu Usecase trong Ví d này?
Víd2:XétphnmmQunlýthvin
STT Yêucu
1
Lp thc gi
1
Lp
th
c
gi
2Nhnsáchmi
3Tracuhcsinh
4Lpphiumn
5Nhntrsách
6
Thay i quy nh
14
6
Thay
i
quy
nh
Có bao nhiêu Usecase trong Ví d này?
Víd3:XétphnmmThínghimmchin
STT Yêucu
1
Sp t mch in
1
Sp
t
mch
in
2 Cungcpngunin
3Thayithôngs
4Lubàithínghim
5Lylithínghim
6
Thay i quy nh
15
6
Thay
i
quy
nh
Có bao nhiêu Usecase trong Ví d này?
SUseCase
• Stngtác giaActor vàUsecase
• Chiucamitên thhinvaitròchng trongstngtác
Chng3:Môhìnhhóayêucu
Trng C Công Ngh Thông Tin TP.HCM
5
SUseCase
•
S tng tác
gia
Actor
và
Use
case
•
S
tng
tác
gia
Actor
và
Use
case
• Chiucamitên thhinvaitròchng trong
stngtác
• Víd:
Kim tra tài khon
Rúttin
Kháchhàng
Kim
tra
tài
khon
TngquáthóagiacácActor
Ngisdng
Giáoviên
Giáov
MôtUseCase
1. UseCasebtukhikháchhàngathtíndng
vào.Hthngcvàthmtrathôngtincath.
hô h h h k
2. H
t
hô
ngn
h
cn
h
ps
PIN.H
t
h
ng
k
i
mtras
PIN.
3. Hthnghitácvnàokháchhàngmunthchin.
Kháchhàngchn“Rúttin.”
4. Hthnghislng.Kháchhàngnhpslng.
5. Hthngyêucunhpkiutàikhon.
Kháchhàng
chn checking hoc savings
chn
checking
hoc
savings
.
6. HthngliênlcviATMnetwork...
MôtUseCase(tt)
• basicflow (“HappyPath”)
• Mtsalternativeflows
•
Các bin th thng gp (Regular variants)
Các
bin
th
thng
gp
(Regular
variants)
• Cáctrnghpbtthng(Oddcases)
• Exceptionalflows xlýcáctìnhhungli
“HappyPath”
Chng3:Môhìnhhóayêucu
Trng C Công Ngh Thông Tin TP.HCM
6
Slungdliu
Cáckýhiu
Tácnhân
/
thitb
(
N
g
isd
n
g,
thitb
p
hát
/ (g g,
p
sinhhaytipnhndliu)
Khixlý
Lun
g
dli
u
(
thôn
g
tin
)
g (g)
Bnhph(Hs,Ssách,tptin,csdl…)
Cáccps
Cáccps
Cp0:Toànbphnmmlàmtkhixlý
ó h hâ ã hà h hi
C
p1:S
c
p0c
ó
t
h
p
hâ
nr
ã
t
hà
n
h
n
hi
us
cp1,cácscp1nàyphimbothhiny
ýnghascp0(tácnhân,thitb,lungd
liu,xlý,bnhph)
Cp2:Miscp
1licóthphânrãthànhnhiu
sc
p
2tn
g
t
nhvi
c
p
hânrãcasc
p
p g p p
0
………
Víd:Scp0
Configuration Information
Configuration
Data
Configuration
Data
Víd:Scp1
Chng3:Môhìnhhóayêucu
Trng C Công Ngh Thông Tin TP.HCM
7
Stngquát
Ýnghatngdòngdliu
D1:…………….
D2:…………….
D3
Dliu
Dliu
t
Ngidùng
Thitbnhp
Thitbxut
Xlý…
D1
D2
D5
D6
D3
:…………….
D4:…………….
D5:…………….
D6:…………….
nhp
xu
t
D liu
D li
D3
D4
Thuttoánxlý:
Bc1:………………
Bc2:………………
Bc3:………………
…………………………
D
liu
c
D
li
u
ghi
StngquátchoYêuculutr
D1:Thôngtincnlutr (davàobiu
mu liên quan)
D
5
:
Thông
tin
cn
lu
tr
(ch
có
trong
mt
Ngidùng
D
5
:
Thông
tin
cn
lu
tr
(ch
có
trong
mt
s yêu cu cbit)
D3:
• Các danh mc chnla
• D liucnthitchovickimtratính
hpl (da vào quy nh)
D2:
• Các danh mc chnla
•
Kt
qu
thành
công/tht
bi
Thitbnhp
Thitbxut
Xlý
lutr
D1 D2
D3
D4
D5
D6
•
Kt
qu
thành
công/tht
bi
D4:D liu clutr (davàobiu
mu).
• Ghi chú: Thông thng
D4 =D1 (+D5)(+IDtphátsinh)
D6:D liuktxut(ch có trong mts
yêu cu cbit)
StngquátchoYêuculutr
X lý lutr
• ĐcD3 ly các tham s, quy nh và
danh
mc
Ngidùng
danh
mc
• Hinth D2 (các danh mc)
• Nhn thông tin D1, D5 (nucn)
• Kim tra các thông tin D1, D5 có tha
quy nh liên quan hay không (davào
D3 nucnthit)
• Nutha quy nh,
ghi D4, thông báo
kt
q
u D2
(
nucn
)
và xutD6
(
nu
Thitbnhp
Thitbxut
Xlý
lutr
D1 D2
D3
D4
D5
D6
q
(
)
(
cnthit)
StngquátchoYêuculutr
Ghi chú:
• D1 không nhtthitchatoànb thông
tin
trong
biu
mu
liên
quan
Ngidùng
tin
trong
biu
mu
liên
quan
• Tùy theo quy nh có th có hay không
có
D5
• D4 hoc D6 không nhtthitphi trùng
vi
D1 hoc D5
• D2 không nhtthitphi trùng vi D3
Thitbnhp
Thitbxut
Xlý
lutr
D1 D2
D3
D4
D5
D6