1. Trang chủ
  2. » Công Nghệ Thông Tin

Chương 4 biểu đồ lớp

25 356 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

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 Chng 4: Bi  p PHÂN TÍCH THIT K H THNG HNG I NG 2 Ni dung   ích xây dng bi  p  i tng và lp  Xác nh lp và i tng  Bi  p  t s ví d minh ho 2 3 Bilp Bi  p cho phép chúng ta din t các lp trong UML  Mô t u trúc tnh a h thng thông qua các p và các mi quan h a chúng 4 M ích xây dng bilp Dùng làm su liu các lp to thành h thng  Dùng  mô t các kt hp, các mi quan h gia các p  Có th c dùng trên khp qui trình phát trin, t c  các lp trong xác nh yêu c n mô hình cài t cho h thng  Dùng  biu din các th hin riêng l bên trong cu trúc lp 3 5 Lpvài tng 6 i tng  i tng (object) là 1 thc th có thuc tính, hành vi (phng thc), và nh danh  Thcthth(tangible) hay  Thc th tru tng  Khái nim  ng 1 hay 2 chiu (ma trn), chui ký t,… 4 7 Biu dii tng   i tng c biu din bi mt hình ch nht vi tên c gch di :Professor Ch có tên lp ProfessorClark Ch có tên i tng ProfessorClark:Professor Tên lp và tên i tng 8 Lp  p(class) là 1 tp hp các i tng có cùng p thuc tính (attributes), hành vi (operations), các mi quan h (relationships), và ng ngha (semantics)   i tng là mt th hin ca lp  tlplàstrutngmàtrongó: Nhn mnh các tính cht quan trng   qua các tính cht khác 5 9 Víd Thuc tính Tên  m Thi gian  tín ch Hành vi Thêm mt sinh viên y mt SV p danh sách ging viên Class Khóa hc 10 Biu dinlp trong UML  t l c biu din bng mt hình ch nht có 3 ngn:  Ngn th nht dành cho tên lp: tên lp phi  u bng mt ch cái vit hoa  Ngn th hai dành cho các thuc tính: tên thuc tính phi b u bng mt ch cái vit thng  Ngn th ba dành cho các thao tác: tên thao tác phi b u bng mt ch cái vit thng 6 11 Biu dinlp trong UML (tt) Athlete Fruit Apple HockeyPlayer Person Kiwi Tên lp 12 Các thuc tính calp Athlete teamName: String Person age: Duration height: Length Fruit numSeeds: Integer Apple skinColour: Colour diameter: Length 7 13 Cúphápca thuc tính [Tm nhìn][/]tên[:Kiu][Bn s][=Giá tr u]  m nhìn (Visibility)  Public (+)  Private (-)  Protected (#)  Package (~)  Kiu (Type): kiu ca các giá tr thuc tính  Kiu thông thng: Integer, Real, Boolean…  Các kiu khác (là mt lp khác hoc do ngi dùng nh ngha): Point, Area,… 14 Cúphápca thuc tính (tt)  n s (Multiplicity): s các giá tr có th nhn, có dng [m n]  1 1 c rút gn là 1  0 * c rút gn là *  u không xác nh c bn s thì m nh là 1  Ví d  telephoneNumber[1 3]  telephoneNumber[0 1]  telephoneNumber[1 *] 8 15 Cúphápca thuc tính (tt)  Giá tr u (Initial value): giá tr ng nh gán cho thuc tính khi m i tng c to lp  p  /: Thuc tính dn xut (giá tr a nó c tính  giá tr a nhng thuc tính khác ca lp)  Ví d: /tui 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 calp Person +setBirthday() +getHeight(): Length Apple +getSkinColour(): Colour +bite(depth: Length) 18 Cúphápca thao tác [Tm nhìn] tên [(danh sách tham s)][:Kiu tr ]  Danh sách tham s: gm mt s tham s hình thc, cách nhau ng du phy, có dng: tên: Kiu [=giá tr ng nh] 10 19 Vídvlp -lastname:String -firstname:String -middlename[0 2]:String -dateOfName:Date -/age:Integer -dateRegistered:Date = today CarSharer +setJourney(newJourney:Journey) +notYetMatched():Boolean n s Thuc tính dn xut Giá tr khi to 20 Miquanhgiacáclp (Relationship)  t ni ng ngha gia các lp, gm các quan :  Khái quát hoá (Generalization)  A ‘is a kind of’ B  Liên kt (Association)  A ‘is associated with’ B  t nhp (Aggregation) và hp thành (Composition)  A ‘is a part of’ B  Ph thuc (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 . dng: tên: Kiu [=giá tr ng nh] 10 19 Vídvlp -lastname:String -firstname:String -middlename[0 2]:String -dateOfName:Date -/ age:Integer -dateRegistered:Date = today CarSharer +setJourney(newJourney:Journey) +notYetMatched():Boolean n. /tui 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 calp Person +setBirthday() +getHeight():. (+)  Private (-)  Protected (#)  Package (~)  Kiu (Type): kiu ca các giá tr thuc tính  Kiu thông thng: Integer, Real, Boolean…  Các kiu khác (là mt lp khác hoc do ngi dùng

Ngày đăng: 03/07/2015, 16:30

TỪ KHÓA LIÊN QUAN

w