Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 25 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
25
Dung lượng
212,18 KB
Nội dung
1 1 Chng 4: Bi p PHÂN TÍCH THIT K H THNG HNG I NG 2 Ni dung ích xây dng bi p i tng và lp Xác nh lp và i tng Bi p t s ví d minh ho 2 3 Bilp Bi p cho phép chúng ta din t các lp trong UML Mô t u trúc tnh a h thng thông qua các p và các mi quan h a chúng 4 M ích xây dng bilp Dùng làm su liu các lp to thành h thng Dùng mô t các kt hp, các mi quan h gia các p Có th c dùng trên khp qui trình phát trin, t c các lp trong xác nh yêu c n mô hình cài t cho h thng Dùng biu din các th hin riêng l bên trong cu trúc lp 3 5 Lpvài tng 6 i tng i tng (object) là 1 thc th có thuc tính, hành vi (phng thc), và nh danh Thcthth(tangible) hay Thc th tru tng Khái nim ng 1 hay 2 chiu (ma trn), chui ký t,… 4 7 Biu dii tng i tng c biu din bi mt hình ch nht vi tên c gch di :Professor Ch có tên lp ProfessorClark Ch có tên i tng ProfessorClark:Professor Tên lp và tên i tng 8 Lp p(class) là 1 tp hp các i tng có cùng p thuc tính (attributes), hành vi (operations), các mi quan h (relationships), và ng ngha (semantics) i tng là mt th hin ca lp tlplàstrutngmàtrongó: Nhn mnh các tính cht quan trng qua các tính cht khác 5 9 Víd Thuc tính Tên m Thi gian tín ch Hành vi Thêm mt sinh viên y mt SV p danh sách ging viên Class Khóa hc 10 Biu dinlp trong UML t l c biu din bng mt hình ch nht có 3 ngn: Ngn th nht dành cho tên lp: tên lp phi u bng mt ch cái vit hoa Ngn th hai dành cho các thuc tính: tên thuc tính phi b u bng mt ch cái vit thng Ngn th ba dành cho các thao tác: tên thao tác phi b u bng mt ch cái vit thng 6 11 Biu dinlp trong UML (tt) Athlete Fruit Apple HockeyPlayer Person Kiwi Tên lp 12 Các thuc tính calp Athlete teamName: String Person age: Duration height: Length Fruit numSeeds: Integer Apple skinColour: Colour diameter: Length 7 13 Cúphápca thuc tính [Tm nhìn][/]tên[:Kiu][Bn s][=Giá tr u] m nhìn (Visibility) Public (+) Private (-) Protected (#) Package (~) Kiu (Type): kiu ca các giá tr thuc tính Kiu thông thng: Integer, Real, Boolean… Các kiu khác (là mt lp khác hoc do ngi dùng nh ngha): Point, Area,… 14 Cúphápca thuc tính (tt) n s (Multiplicity): s các giá tr có th nhn, có dng [m n] 1 1 c rút gn là 1 0 * c rút gn là * u không xác nh c bn s thì m nh là 1 Ví d telephoneNumber[1 3] telephoneNumber[0 1] telephoneNumber[1 *] 8 15 Cúphápca thuc tính (tt) Giá tr u (Initial value): giá tr ng nh gán cho thuc tính khi m i tng c to lp p /: Thuc tính dn xut (giá tr a nó c tính giá tr a nhng thuc tính khác ca lp) Ví d: /tui 16 Víd Athlete +teamName: String Person /age: Duration height: Length Fruit -numSeeds: Integer Apple -skinColour: Colour #diameter: Length ~carboRatio: Real 9 17 Các thao tác calp Person +setBirthday() +getHeight(): Length Apple +getSkinColour(): Colour +bite(depth: Length) 18 Cúphápca thao tác [Tm nhìn] tên [(danh sách tham s)][:Kiu tr ] Danh sách tham s: gm mt s tham s hình thc, cách nhau ng du phy, có dng: tên: Kiu [=giá tr ng nh] 10 19 Vídvlp -lastname:String -firstname:String -middlename[0 2]:String -dateOfName:Date -/age:Integer -dateRegistered:Date = today CarSharer +setJourney(newJourney:Journey) +notYetMatched():Boolean n s Thuc tính dn xut Giá tr khi to 20 Miquanhgiacáclp (Relationship) t ni ng ngha gia các lp, gm các quan : Khái quát hoá (Generalization) A ‘is a kind of’ B Liên kt (Association) A ‘is associated with’ B t nhp (Aggregation) và hp thành (Composition) A ‘is a part of’ B Ph thuc (Dependency) [...]... Phòng ào o 42 21 D a vào m th c th ích xác nh UC th c hi n 1 công vi c -> liên quan th (ng i , 1 cái gì ó) i th c th m thu c tính + hành vi Xác nh th c th : Nh ng th c th nào là c n thi t và quan tr ng ng t i v i thu c tính & hành vi n nhi u th c th c hi n UC 43 Ví d KhachHang DonDatHang MaKH TenKH MaDDH NgayDH t hàng Ng i bán hàng NguoiBanHang MatHang MaNguoiBH TenNguoiBH ph n k toán MaMH TenMH 44 22 Xác... * ng DonDatHang MaDDH NgayDH 45 Xác nh các hàm thành ph n th hi n s c ng tác c a l p Câu h i xác nh: UC c n làm gì v i m i t ng bên trong nó? UC c n bi t gì v i t ng liên quan v i nó? i t ng liên quan có th óng góp gì cho UC nó thu c v 46 23 Lo i b các l p không c n thi t Các L p khác nhau l i cùng mô t th ym t Ng 1 th c i mua hàng, khách hàng,… p không có ch c n ng c th 47 M t s câu h i giúp nh n d... vi n l p nào c cs ng trong h th ng th ng qu n lý các thi t b ngo i vi nào Vai trò c a các tác nhân i v i h th ng là gì? 48 24 Tìm ki m thu c tính & các thu c tính c al p Danh t trong lu ng s ki n p, thu c tính,…? Phân bi t thu c tính hay th c th ? n thi t không th a, thi u it ng, 49 Ví d Document 1 0 * [ordered] Paragraph 1 0 * Element [ordered] Character Image 50 25 ... hàng In Phi u thanh toán cho khách và giao hàng ã thanh toán 40 20 D a vào m nh l it Xác p ích s d ng UC ng xác nh các danh t trong lu ng s ki n ng t ph ng th c Khó kh n: tu vào n i dung c t mà 1 th c th có th c xác nh t ng ng b i nhi u tên khác nhau Ng i mua hàng khách hàng Nhân viên cán b , công ch c Các danh t : tác nhân, l p, thu c tính l p 41 Xác nh m ích c a m i UC Là m c tiêu mà h th ng c n th c... Ví d ng áp d ng tên liên k t Professor teaches * teacher 1 * Course class tên vai trò ns am ik th p 24 12 B n s c a m i k t h p (Multiplicity) ng các th hi n c a l p có quan h t th hi n c a l p khác 1 t và ch t 0 * ho c * 0 n nhi u 1 * n nhi u 0 1 không hay m t m n m n n (m, n nh là 1 i N) Course 0 4 10 20 Student 25 Vai trò (Role) t vai trò bi u di n cho m t t p h ng ct i Tr ng sinh viên giáo viên... m t t p h ng ct i Tr ng sinh viên giáo viên Ng i i ch ng t hôn 26 13 Liên k t Ho c CôngtyB ohi m 0 * 1 ngB ohi m 0 * 1 Ng i 0 * {or} 1 * Côngty 27 Liên k t có th t Kháchhàng 1 0 * Hóa {ordered} n 28 14 L p liên k t * Côngty 1 * quan ng Ng i ng i làm công Công vi c môt ngàytuy nd ng ng 29 Liên k t nhi u bên CôngtyB ohi m 1 0 * ngB ohi m 0 * Th ohi m 0 1 1 * Ng i 30 15 Quan h k t nh p (Aggregation) Bi... m 32 16 Quan h ph thu c (Dependencies) Quan h 1 chi u: 1 l p ph thu c vào l p khác (b ng) Using relationship CourseSchedule addCourse(c : Course) removeCourse(c : Course Course 33 Xác nh l p và it ng 34 17 Các ph ng ng pháp tìm ki m l i Phân tích ph m vi bài toán tìm l p a vào danh sách ph m trù khái ni m a vào các use case a vào kinh nghi m & ki n th c c a ng i phân tích a vào h tài li u nh ng h th . dng: tên: Kiu [=giá tr ng nh] 10 19 Vídvlp -lastname:String -firstname:String -middlename[0 2]:String -dateOfName:Date -/ age:Integer -dateRegistered:Date = today CarSharer +setJourney(newJourney:Journey) +notYetMatched():Boolean n. /tui 16 Víd Athlete +teamName: String Person /age: Duration height: Length Fruit -numSeeds: Integer Apple -skinColour: Colour #diameter: Length ~carboRatio: Real 9 17 Các thao tác calp Person +setBirthday() +getHeight():. (+) Private (-) Protected (#) Package (~) Kiu (Type): kiu ca các giá tr thuc tính Kiu thông thng: Integer, Real, Boolean… Các kiu khác (là mt lp khác hoc do ngi dùng