ng trình theo
ố ượ
Bài 8: Thi h
ế ế ươ t k ch ướ ng đ i t
ng.
ệ ố
ể
ạ
Các giai đo n phát tri n h th ng
ề
ệ ố
ể
ầ
• Năm giai đo n đ phát tri n h th ng ph n m m
theo h
ng.
ặ ả
ể ạ ố ượ ng đ i t ầ yêu c u(Requirement analysis)
ế ế
ướ • Đ c t • Phân tích (Analysis) • Thi t k (Design) ậ • L p trình (Programming) ể • Ki m tra (Testing)
ệ ố
ể
ạ
Các giai đo n phát tri n h th ng
ầ
• Đ c t
ườ
ng h p s d ng (usecase) qui
ặ ả yêu c u: ể • Tìm hi u các tr ệ ụ
ợ ử ụ ầ ủ
ủ
ề ả
ế
trình nghi p v , yêu c u c a khách hàng, c a ấ v n đ gi
i quy t.
ố
• Thông qua các use case tìm ra các nhân t
tham gia
ượ
ỗ
ả ằ
ặ ả
ả
ệ ố vào h th ng. • M i use case đ
b ng văn b n, đ c t
ầ ủ
c mô t yêu c u c a khách hàng.
ệ ố
ể
ạ
Các giai đo n phát tri n h th ng
• Phân tích:
ừ
ặ ả
• T các đ c t
yêu c u , h th ng b ở
ớ
ướ ầ ượ c đ u đ c ng và
ố ượ ủ ệ ố
ơ ế ể ễ ả
ho t đ ng c a h th ng.
ớ
ệ ố ệ ạ ộ ư ả các l p ch a đi sâu vào
ầ mô hình hóa b i các khái ni m l p, đ i t các c ch đ di n t ỉ ướ c này ch mô t ậ ế ỹ t k thu t.
• Trong b các chi ti
ệ ố
ể
ạ
Các giai đo n phát tri n h th ng
• Thi
ế ế t k :
ả
• Trong giai đo n thi
ạ ở ộ
ỹ
ệ
ứ
ế ế ế t k , k t qu quá trình phân ượ ả ậ tích đ c m r ng thành gi i pháp k thu t. Các ớ ơ ở ư ớ ớ ượ c thêm vào nh l p giao di n, l p c s l p đ ớ ữ ệ d li u, l p ch c năng…
• L p trình:
ặ ả
ế ế
ả ủ ướ
chi ti
t k t qu c a b
c
ậ ướ • B c này đ c t ế ế t k .
thi • Các b
c c a l p thi
ế ế ượ t k đ ữ ậ
ố
ể c chuy n thành ướ ng đ i
ướ ủ ớ ồ ng nào đó.
mã ngu n theo ngôn ng l p trình h ượ t
ạ
ể
• Ki m tra: Có 4 hình th c ki m tra h th ng.
ệ ố ệ ố đượ
đơ
ể
ể
ể § Ki m tra t ng
c dùng ki m tra
đơ
ớ
Các giai đo n phát tri n h th ng ứ ừ ể ặ các l p ho c các nhóm
ể n th (unit testing) n.
đượ
ợ § Ki m tra tính tích h p (integration testing),
ế ợ c k t h p
ầ
ki m tra xem chúng
đ
ớ để ể ng v i nhau có úng không.
ki m tra xem
ớ ệ ố đ
§ Ki m tra h th ng (system testing) ch ứ
đượ
ứ
ườ
ỉ để ể ă c ch c n ng mà ng
i dùng yêu
§ Ki m tra tính ch p nh n
ể ớ v i các thành ph n và các l p ạ độ ho t ể ệ ố h th ng có áp ng ầ c u không. ể ể
ệ ể
c(acceptance testing), vi c c th c hi n b i khách hàng, vi c ki m
ở ư ể
ệ ố
ậ đượ ự ệ ố
ấ đượ ệ
ũ
ệ ki m tra này ự tra c ng th c hi n gi ng nh ki m tra h th ng
Cách tìm l pớ
•
ớ
ớ
c tìm t
ễ
•
ặ ừ pham vi bài toán, nên đ t tên l p trùng v i tên ự ả ờ
ố ượ ớ
ớ ượ L p đ các đ i t ể Đ tìm l p tr l
ng th c mà ta bi u di n. i các câu h i sau:
ể ỏ ữ
§ Có thông tin nào c n l u tr hay phân tích không? N u có, c n t o
ầ ư ầ ạ ế
§ Có h th ng bên ngoài hay không? H th ng ngoài có th đ ủ
l p.ớ
ệ ố ứ ệ ố ớ ể ượ c xem ớ ặ ươ ệ ố ư nh các l p mà h th ng c a chúng ta ch a ho c t ng tác v i nó.
§ Có các m u thi
ầ
t k , th vi n l p, thành ph n, … hay không? Các ồ ướ ừ ừ các project tr c đó, t các đ ng
ư ệ ớ ượ c xây d ng t ấ ả ệ ẫ ế ế ự ầ thành ph n này đã đ ặ nghi p ho c các nhà s n xu t?
§ Có thi
ứ ả ế ị ượ t b nào đ c
t b nào mà h th ng ph i đáp ng? B t c thi ể ế ị ố ớ ệ ố ệ ố ể ấ ứ ể ớ ự n i v i h th ng có th chuy n thành l p d tuy n.
§ Tác nhân đóng vai trò nh th nào trong h th ng? Các vai di n này ị
ễ
ư ế ư ườ ử ụ ượ ườ ả ệ ố i s d ng, khách hàng, ng ớ c xem là l p nh ng i qu n tr … nên đ
ướ ầ
Các b
c c n thi
t đ thi
ế ế ươ t k ch
ng
•
ự
ả
ươ
ố ượ
ng ph i xây d ng
ế ể trình ng trình theo h ế ừ
ệ ữ
ướ ng đ i t ố
ế ế ộ t k m t ch ả ệ
ố
ng.
•
ướ c sau: ủ ng (l p) c a bài toán.
ự đị § Xác nh các d ng ế § Tìm ki m các
ớ ữ ệ ạ đố c tính chung (d li u chung) trong các d ng i
ượ t
ể Đ thi ộ m t cây ph h mang tính k th a và m i quan h gi a các đ i ượ t ả ệ ả ể Đ xây d ng cây ph h tr i qua các b ạ đố ượ i t đặ ữ c l p c s d a trên c s các
ơ ở ủ c tính chung c a
ẻ ng này, nh ng gì chúng cùng nhau chia s . đặ ơ ở ự đị § Xác nh ạ các d ng ừ ớ đượ ớ đố ượ ng. i t ơ ở ử ụ ệ ổ ệ
§ T l p c s , s d ng quan h t ng quát hóa ấ ạ ủ
ầ ớ
đư để đặ ả c t trong vi c đặ ữ c tính ng. Bên c nh ó, ta còn a
đố ượ i c a d ng i t ơ ở ớ ệ ớ ạ ẫ ớ ớ đư ẫ ứ a ra các l p d n xu t ch a các thành ph n, nh ng đ ạ không chung còn l ấ ra các l p có quan h v i các l p c s và l p d n xu t
ướ ầ
Các b
c c n thi
ế ế ươ t k ch
ng
t đ thi
ế ể trình
• Đ i v i các bài toán ph c t p:
§
ố ớ
ề
ậ
ộ
ủ
đố ượ i t
ậ ự ng c a bài toán theo tr t t
Phân tích m t cách c n th n v các ừ ướ t d
i lên (bottom up).
ữ
đặ
đố ượ i t
ng, nhóm các
c tính này
ế ế đượ
ồ ạ § Tìm ra nh ng gì t n t i chung gi a các ơ ở ớ c các l p c s . ừ ướ ướ ng t d
i lên, chúng ta thi t k
c các
đố ượ i t
ng
ữ ạ để đượ i l ế ụ § Ti p t c theo h phù h p.ợ
ứ ạ ẩ
ướ ầ
Các b
c c n thi
ế ế ươ t k ch
ng
t đ thi
ế ể trình
• Sau đó:
đặ ừ ướ ằ ố ng t trên xu ng b ng cách cài t đố ượ i t
ng ấ đặ ơ ở
ơ ở đặ c tính chung
t theo h § Cài ớ l p c s chung nh t. ấ ớ t các l p d n xu t trên c s các đố ượ i t
ệ ố ủ đượ đặ đố ượ i t ng c a h th ng c cài t
§ Cho xong
ẫ ng. ạ ả ệ đặ ế ụ § Ti p t c cài ủ ừ c a t ng nhóm ấ ả đế n khi t t c các d ng để đượ c cây ph h
Ví d 1ụ
ề ươ
ủ
ơ
ng c a các nhân viên trong c quan theo các
ạ
ườ
độ
ươ
§ D ng ng
ạ
n
ươ
ườ
đượ
ừ ng t ngân sách Nhà ứ ế c g i là cán b , công ch c (d ng biên ch ). ủ ơ ừ ng t ngân sách c a c ợ đồ
ng lãnh l ộ ng lãnh l ườ
i lao ọ i lao ọ
Tính ti n l d ng khác nhau: ạ ướ đượ c ạ § D ng ng quan
độ c g i là ng
i làm h p
ng.
Ví d 1ụ
•
ệ ố
ố ượ
ế
ợ
ồ
ng: Biên ch và h p đ ng.
•
ứ
ặ
ng này có đ c tính chung đó là viên ch c làm
ệ
H th ng có hai đ i t ạ ố ượ Hai lo i đ i t ơ vi c cho c quan. ể ạ
ớ
ộ
ứ
ớ ơ ở ể
ồ
•
ự
ạ ế ừ ừ ớ ơ ở
có th t o nên l p c s đ qu n lý m t viên ch c (l p Nguoi) bao g m mã s , h tên và l Sau đó xây d ng các l p còn l
ớ
ứ
ồ
l p c s trên: ớ BienChe) g m các
ộ
thu c tính: h s l
ả ố ọ ươ ng. ớ i k th a t ộ § L p dành cho cán b , công ch c (l p ứ ụ ụ ấ ệ ố ươ ng, ti n ph c p ch c v . ồ ườ
ớ
i làm h p đ ng (l p
§ L p dành cho ng
ớ HopDong) g m các
ệ
ộ
ố
ờ
ề ợ ồ ộ ề thu c tính: ti n công lao đ ng, s ngày làm vi c trong ệ ố ượ tháng, h s v
t gi
.
Ví d 2ụ
ố ă
ưở
ọ ầ s cu i n m h c c n trao gi ả
ng cho các sinh viên ọ đượ
ả i th ề
c
ả ử ấ ắ ố
ạ
Gi xu t s c và các gi ng viên có nhi u công trình khoa h c công b trên t p chí.
Ví d 2ụ
ả ệ Các l p trong cây ph h :
ồ ơ ả
ề
ả ớ l p ớ Nguoi qu n lý h s cá nhân ả l p ớ SinhVien qu n lý v sinh viên ả l p ớ GiangVien qu n lý gi ng viên.
ả ể ọ ứ ượ ưở ươ ứ ng th c ki m tra kh năng đ c khen th ng. Đây là ph ng th c
ứ ươ ươ ầ ả ứ ấ ng th c xu t. Đây là ph ng th c thu n o.
ả ượ ưở c khen th ng.
ữ ệ ươ ươ ể ấ ể ứ ng th c ki m tra kh năng đ ứ ng th c xu t.
ả ượ ưở c khen th ng.
ữ ệ ươ ươ + L p ớ Nguoi: ữ ệ D li u h và tên. ươ Ph ầ ả thu n o. Ph + L p ớ SinhVien: D li u đi m trung bình. Ph Ph + L p ớ GiangVien: ể D li u đi m trung bình. ể ứ ng th c ki m tra kh năng đ Ph ấ ứ ng th c xu t Ph
Ví d 3ụ
ả ử ầ
ả ạ
ữ
ự
ộ
ậ s c n ph i t o các hình: hình tròn và hình ch nh t ả c tô theo hai màu red và blue. Xây d ng m t cây ph
ệ để
ả
Gi đượ h
qu n lý các hình này
ữ
ướ
ế ầ
l u tr thông tin chung cho
c h t c n có l p c s
đ
ơ ở Shape ẫ ớ
Ví d 3ụ để ư ữ ấ Rectangle v hình hình ch ề
ề
tâm.
đườ
ng biên.
ươ
ầ ả
ứ
ứ ứ ẽ
ươ ươ
Đ
ng th c thu n o.
ế ậ ng th c thi t l p tô màu. ng th c v hình. ây là ph
ề ộ ứ ẽ ng th c v hình.
ươ
ớ Tr các hình, sau ó là hai l p d n xu t ậ Circle v hình tròn. nh t và + L p ớ Shape: ọ độ T a Màu Màu tô. Ph Ph + L p ớ Rectangle: ề Chi u dài và chi u r ng. ươ Ph + L p ớ Circle: Bán kính. Ph
ứ ẽ ng th c v hình.