BÀI GING
PHÂN TÍCH THIT K H
THNG THÔNG TIN
Khoa Công ngh thông tin, i hc Công ngh
Oct - 2007
Khoa Công ngh thông tin - i hc Công ngh 2
Nguyn Vn V –Nguyn th Nht Thanh
Bài 8 – Thit k h thng vt lý
Æ Khái nim v thit k h thng vt lý
Æ Thit k c s d liu vt lý
Æ Xây dng biu đ lung h thng
Æ Thit k kin trúc h thng
Æ Thit k các th tc x lý
Æ Thit k tng tác, các giao din và
báo cáo
Æ Ví d
Oct - 2007
Khoa Công ngh thông tin - i hc Công ngh 3
Nguyn Vn V –Nguyn th Nht Thanh
Tài liu tham kho
1. Nguyn Vn Vy. Giáo trình phân tích thit k HTTT. i hc Công
ngh, 2007.
2. Nguyên Vn V.
Phân tích thi k HTTT. Hng cu trúc và hng đi
tng.
NXB Thng kê, 2002.
3. Nguyn Vn Vy.
Phân tích và thit k HTTT qun lý. NXB Khoa hc
T nhiên và Công ngh, Hà ni, 2007.
4. Nguyn vn Vy, Nguyn Vit Hà. Giáo trình K ngh phn mm. i
hc Công ngh, 2006.
5. Grady Booch, James Rumbaugh, Ivar Jacobson.
The Unified Modeling
language User Guid
. Addison-Wesley, 1998.
6. Jeffrey A.Hoffer, Joey F.Gorge, Joseph S.Valacich.
Modern Systems
Analysis and Design
. 2
th
Edition, Addison Wesley Longman, Inc. 1999.
7. Sommerville.
Software Engineering. 6
th
Edition, Addison- Wasley,
2001.
Oct - 2007
Khoa Công ngh thông tin - i hc Công ngh 4
Nguyn Vn V –Nguyn th Nht Thanh
1. Thit k c s d liu vt lý
Thit k CSDL vt lý là chuyn mô hình d liu lôgic
thành các đc t d liu vt lý phù hp vi điu
kin thit b & môi trng c th trong không gian
và nhu cu s dng. Nó bao gm 2 ni dng:
Ł
Chn công ngh lu tr và qun lý d liu, bao
gm h điu hành, h qun tr CSDL và công c
truy nhp.
Ł Chuyn mô hình lôgic thành thit k vt lý và xác
đnh phnng án cài đt trên h thng thit b
Thit k đây tp trung vào ni dung 2.
Oct - 2007
Khoa Công ngh thông tin - i hc Công ngh 5
Nguyn Vn V –Nguyn th Nht Thanh
a. u vào cho thit k CSDL vt lý
u vào gm:
º Mô hình d liu lôgic (quan h & biu đ liên kt)
º T đin d liu (đnh ngha thuc tính)
º Mô t yêu cu s dng d liu (loi, s lng, ví
trí, thi gian, cách dùng)
º Mong đi ca ngi dùng v s dng, tích hp d
liu
º Mô t công ngh và thit b s dng (nh đã nêu
trên)
Oct - 2007
Khoa Công ngh thông tin - i hc Công ngh 6
Nguyn Vn V –Nguyn th Nht Thanh
b. S đ thit k c s d liu vt lý
º Cu trúc CSDL logic
º Yêu cu s dng
º c tính h qun tr,
môi trng
1. Phân tích khi lng
lu tr và s dng d
liu
2. Chin lc phân tán
3. T chc tp
4. Lp ch s
5. Thit k ràng buc an
toàn
CSDL vt lý
Oct - 2007
Khoa Công ngh thông tin - i hc Công ngh 7
Nguyn Vn V –Nguyn th Nht Thanh
c. Ni dung thit k CSDL vt lý
Các ni dung chính:
º Thit k các trng (cho mi bn ghi)
º Thit k bn ghi (cho mi tp)
º Thit k tp (các loi tp)
º Thit k c s d liu vt lý (t chc tp)
º Xây dng phng án b trí tp trong không gian
º c lng khi lng lu tr
Oct - 2007
Khoa Công ngh thông tin - i hc Công ngh 8
Nguyn Vn V –Nguyn th Nht Thanh
Ł Trng là mt đn v d liu nh nht mà phn mm
h thng nhn ra & thao tác
Ł Mc tiêu:
̈ Tit kim không gian nh (chn kích c, kiu)
̈ Biu din đc mi giá tr (kiu, đnh dng)
̈ Ci thin tính toàn vn (biu din, th hin)
̈ H tr thao tác (kiu, đnh dng, th hin)
Ł Mt thuc tính trong mô hình d liu logic có th đc
biu din thành 1 hay 1 s trng
d. Thit k trng
c t trng
Oct - 2007
Khoa Công ngh thông tin - i hc Công ngh 9
Nguyn Vn V –Nguyn th Nht Thanh
d1. Vài đc t tiêu biu mt trng
Loai đc t Mô t ni dung
Tên trng Theo quy đnh ca h qun tr CSDL
Kiu trng Mt kiu đc s dng trong h qun tr CSDL
Kích c (size) đn v đo biu din giá tr ca trng
Mã hoá (coding) Mt cách có th biu din vn tt giá tr ca trng
Quy tc toàn vn DL c t v gii hn đt lên các giá tr trng
Các kim soát bo trì Giá tr đc phép thay đi khi nó đc cp nht.
Th tc ca DL mt Mô t vic qun lí giá tr mt ca trng
Công thc (formula) Mô t công thc tính toán giá tr trng cn tính toán
Hng s kim tra c t quan h toán hc vi các trng ch/ s khác.
Toàn vn tham chiu c t giá tr trng liên quan đn trong bn ghi khác
S hu (ownership) Mô t ngi có quyn truy nhp, cp nht
t
Oct - 2007
Khoa Công ngh thông tin - i hc Công ngh 10
Nguyn Vn V –Nguyn th Nht Thanh
d2. Mt s đc trng thit k trng
º Kiu d liu và đnh dng (h qun tr cung cp):
º Biu din d liu:
DECIMAL(m,n) INTEGER
CHAR (m) DATE
SMALLINT
LOGICAL
FLOAT (m, n)
•Kim tra tính toàn vn d liu
- t giá tr ngm đnh
-Kim tra khuôn dng
-Kim tra gii hn
- Toàn vn tham chiu
-Kim tra giá tr rng
-Qun lý d liu mt
•Chn khoá chính
• Mã hoá d liu
- Mã hoá phân cp
- Mã hoá liên tc
-Mã gi nh
- Mã thành phn ng ngha
•Các trng tính toán
OLE
Oct - 2007
Khoa Công ngh thông tin - i hc Công ngh 11
Nguyn Vn V –Nguyn th Nht Thanh
e. Thit k bn ghi vt lý
Ł Mt bn ghi vt lý là 1 nhóm các trng đc
lu trv trí k nhau trong b nh và đc gi ra
đng thi nh 1 đn v thng nht
Ł
Phi chun hoá: Tách/hp nht các quan h đã
chun hóa đ đc quan h phù hp vi điu kin c
th, đt hiu qu mong mun:
̇ dài trang máy
̇ Nhu cu s truy cp thng xuyên/không
̇ Bn ghi đ dài thay đi
̇ …
Oct - 2007
Khoa Công ngh thông tin - i hc Công ngh 12
Nguyn Vn V –Nguyn th Nht Thanh
e1. Ví d phi chun
Ł Hp nht hai quan h mt-mt đ gim s tp
Ł Tách quan h đã chun thành 2 quan h có đ dài bn
ghi phù hp đ dài trang máy
SINHVIEN (mãsv, đachi, smáy)
MAYTINH (smáy, ngàyTH, côngvic)
SINHVIEN (masv, diachi,
ngayTH, congviec)
BÊNHNHÂN (mãbn,tênbn,đach, ngaynhp,ging,khoa,tìnhtrng, ngayra, th.toán)
BNHNHÂN2 (mãbn,ngàynhp,ging,tìnhtrng, ngayra, th.toán)
BNHNHÂN1 (mãbn, tênbn, đach, khoa )
Oct - 2007
Khoa Công ngh thông tin - i hc Công ngh 13
Nguyn Vn V –Nguyn th Nht Thanh
f. Thit k tp vt lý
Ł Mt tp vt lý là mt phn nh ca b nh th cp lu
các bn ghi vt lý mt cách đc lp
Ł Các loi tp:
̇ Tp d liu
̇ Tp ly d liu
̇ Tp giao dch
Ł Con tr
Ł Phng pháp truy nhp
̇ Phng pháp trc tip
̇ Phng pháp gián tip
̇ Tp làm vic
̇ Tp bo v, sao lu
̇ Tp lch s
Oct - 2007
Khoa Công ngh thông tin - i hc Công ngh 14
Nguyn Vn V –Nguyn th Nht Thanh
f. Thit k tp vt lý
Ł T chc tp
̇ T chc tp tun t
̇ T chc tp ch s
Ł Yu t cn quan tâm khi thit k
̇ Ly d liu nhanh
̇ Thông lng các giao dch x lý ln
̇ S dng hiu qu không gian nh
̇ Tránh đc sai sót và mt d liu
̇ Ti u hoá nhu cu t chc tp
̇ áp ng đc nhu cu tng trng d liu
̇ An toàn
Oct - 2007
Khoa Công ngh thông tin - i hc Công ngh 15
Nguyn Vn V –Nguyn th Nht Thanh
g. Ví d 1 thit k tp vt lý
Tên trng kiu DL kích c DL Khuôn dng Ràng buc
so_phieu text 6
Ch hoa + s
khoá chính
ma_khach text 6
Ch hoa + s khoá ngoi
ngay_giao date 8 dd/mm/yy
noi_giao text 45 đt ch s
tong_tien Integer 9
S nguyên
Vi h qun tr CSDL là Access, mt tp d liu đc thit
k vi các cu trúc sau
Table: PHIEUGIAO
Oct - 2007
Khoa Công ngh thông tin - i hc Công ngh 16
Nguyn Vn V –Nguyn th Nht Thanh
2. Thit lp biu đ lung h thng
Ł u vào: Các biu đ lung d liu lôgic mc c s
Ł
Mc tiêu: Xác đnh chc nng h thng thc hin
Ł
Ni dung:
Xét tng biu đ lung d liu logic mc c s
̈
Phân đnh tin trình: máy làm hay ngi làm
̈ Nu máy thc hin cn xác đnh:
Phng thc x lý (theo lô, thi gian thc, trc tuyn, )
i tng thc hin, phng tin, công c s dng
Ni dung x lý (thut toán, công thc)
Khi nào thc hin
Và ghi li các ý tng thit k này
Oct - 2007
Khoa Công ngh thông tin - i hc Công ngh 17
Nguyn Vn V –Nguyn th Nht Thanh
2.1 Ví d biu đ lung h thng
3.3
lËp biªn
b¶n
kh¸ch
tt sù cè
“sai”
phiÕu chi
3.2
kiÓm tra hiÖn
tr−êng
3.1
kiÓm tra
c¸c sæ
®óng
tt sù
cè
“ cßn göi”
M¸y lµm
“kh«ng göi”
t.t. sù cè
biªn b¶n
kh¸ch
3.BIENBAN
2.XEGUI
4.PHIEUCHI
3.4
lËp phiÕu chi
kÕ toan, m¸y in
b¶o vÖ
b¶o vÖ
Oct - 2007
Khoa Công ngh thông tin - i hc Công ngh 18
Nguyn Vn V –Nguyn th Nht Thanh
3. Thit k kin trúc
a. Khái nim
Ł Kin trúc phn mm ám ch mt cu trúc tng th ca
phn mm và qua đó cung cp mt s tích hp v mt
khái nim ca mt h thng. (Shaw, Garlan 1995 )
Ł
Mô hình kin trúc ca h thng đc xác đnh t các
thành phn cu thành ca các biu đ lung d liu
lôgic mc cao (không phi c s)
Mc cui cùng ca nó s đc b sung bng các tin
trình ca biu đ lung h thng (
các tin trình máy
làm)
Oct - 2007
Khoa Công ngh thông tin - i hc Công ngh 19
Nguyn Vn V –Nguyn th Nht Thanh
b. Ví d biu đ mô hình kin trúc
Môđun đnh
tng
ng vi
biu đ
lung DL
mc 0, 1
tng
ng vi
các tin
trình
lung h
thng
:Các mô đun máy thc hin trong biu đ lung h thng
Oct - 2007
Khoa Công ngh thông tin - i hc Công ngh 20
Nguyn Vn V –Nguyn th Nht Thanh
c. Thit k kin trúc mc thp
Ł mc thp, thit k kin trúc liên quan đn vic cu
trúc biu đ lung h thng thành cu trúc cây.
Ł Có 2 dng cu trúc là “
tp trung giao dch”và“tp
trung chuyn đi”. Vi mi loi có 1 cách x lý
Ł Hình di cho 1 biu đ lung h thng dng
tp
trung chuyn đi
tác
nhân 3
tác nhân 1
tác nhân 2
In báo
cáo C
B
C
A
A đúng
B đúng
To C
Nhn B
Nhn A
Oct - 2007
Khoa Công ngh thông tin - i hc Công ngh 21
Nguyn Vn V –Nguyn th Nht Thanh
c. Thit k kin trúc mc thp
tác
nhân 3
tác
nhân 1
tác
nhân 2
(ký hiu: VA: A đúng,
VB: B đúng)
VB
C
nh
nhn A đúng to C đa C ranhn B đúng
VA
C
VA
VB
Biu đ cu trúc điu khin hình cây
nhn
đc t biu đ lung h thng
Oct - 2007
Khoa Công ngh thông tin - i hc Công ngh 22
Nguyn Vn V –Nguyn th Nht Thanh
d. Cht lng thit k
Ł Tiêu chun ca mt thit k tt
̇ Kt dính cht ch
̇ Ghép ni lng lo
Ł S kt dính (Cohesion) là đ đo s kt li vi nhau
gia các b phn trong mt thành phn.
Ł Các loi kt dính có mc tt (
cht ch) tng dn:
1. Kt dính gom góp
2. Kt dính hi hp logic
3. Kt dính theo thi đim
4. Kt dính th tc
5. Kt dính truyn thông
6. Kt dính tun t
7. Kt dính chc nng
8. Kt dính đi tng
Oct - 2007
Khoa Công ngh thông tin - i hc Công ngh 23
Nguyn Vn V –Nguyn th Nht Thanh
d. Cht lng thit k
Ł S ghép ni (Coupling) ch ra mc đ tng tác bên
trong gia các đn v thành phn ca mt chng
trình
Ł Các loi ghép ni có mc tt (
lng lo) gim dn:
1. Ghép ni d liu
2. Ghép ni nhãn
3. Ghép ni điu khin
4. Ghép ni chung
5. Ghép ni ni dung
Oct - 2007
Khoa Công ngh thông tin - i hc Công ngh 24
Nguyn Vn V –Nguyn th Nht Thanh
e. Nguyên lý & Hng dn cho
thit k tt
Các nguyên tc thit k
•Môđun hoá
•Kim soát chc nng
• c lp tng đi
•Kích thc hp lý
•Mi môđun ch thc
hin 1 và ch 1 chc
nng
•Mt môđun có th s
dng li nhiu ln
Hng dn thit k
• Chia thành các nhân t
•M rng kim tra
• m bo ghép ni lng
•Chn kích c hp lý
• m bo kt dính cht
•To các môđun s dng
chung, s dng li
Oct - 2007
Khoa Công ngh thông tin - i hc Công ngh 25
Nguyn Vn V –Nguyn th Nht Thanh
f. Thit k x lý – công c
Ł Thit k mô đun x lý là
biu din thit k sao cho
d dàng ánh x sang 1
ngôn ng lp trình.
Ł Mt s công c đc s
dng nh:
Gi mã
(Pseudocode), s đ
Nassi-Shneiderman, biu
đ hot đng
Ł Bng bên là 1 ví d v
thit k bng gi mã.
Modul name: Calichulate New Balance
Receives: Curunt-balance, New charges,
Anount-paid, EOF
Returns: New-balance, Status
Set new-balance, New charges, Amount-paid,
EOP
Repeat
New-balance = Current-balance + new -
charges – Amount-paid
Begin if
If New-balance <0
Then Status = 1
Else
BeginIf
If new-balance =0
Then Status =2
Else Status =3
EndIf
EndIf
Return New-balance, Status
Until EOF = Yes