intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng về UML

Chia sẻ: 123968574 123968574 | Ngày: | Loại File: PDF | Số trang:37

153
lượt xem
49
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Tham khảo tài liệu 'bài giảng về uml', công nghệ thông tin, kỹ thuật lập trình phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả

Chủ đề:
Lưu

Nội dung Text: Bài giảng về UML

  1. UML Bài 1: Gi i thi u t ng quan v ngôn ng UML T i sao chúng ta ph i xây d ng mô hình cho h th ng? Mô hình hóa là cách xem xét m t bài toán thông qua vi c s d ng các mô hình. Mô hình dùng ñ hi u rõ bài toán, trao ñ i thông tin gi a nh ng ngư i liên quan như khách hàng, chuyên gia, ngư i phân tích, ngư i thi t k ... Mô hình giúp cho vi c xác ñ nh các yêu c u t t hơn, thi t k rõ ràng hơn và kh năng b o trì h th ng cao hơn. Mô hình là s tr u tư ng hóa, mô t m t b n ch t c a m t v n ñ ho c m t c u trúc ph c t p b ng cách lo i b nh ng chi ti t không quan tr ng, khi n cho bài toán tr nên d hi u và d n m b t hơn. Tr u tư ng hóa là m t kh năng cơ b n c a con ngư i trong vi c gi i quy t các v n ñ ph c t p. Các k sư, ki n trúc sư, các ngh sĩ ñã t ng xây d ng nh ng mô hình t hàng nghìn năm nay ñ th các thi t k c a h trư c khi th c hi n chúng. Vi c phát tri n các h th ng ph n m m cũng không ngo i l . ð xây d ng m t h th ng ph c t p, nh ng ngư i phát tri n ph i tr u tư ng hóa nh ng khía c nh (View) khác nhau c a h th ng, xây d ng các mô hình b ng cách s d ng các kí hi u m t cách rõ ràng, c n th n, ki m tra xem các mô hình ñã tho mãn các yêu c u c a h th ng chưa và d n d n thêm vào các chi ti t ñ có th và ki m soát ki n trúc c a h th ng. Mô hình có th mô t các c u trúc, nh n m nh v m t t ch c c a h th ng ho c nó có th mô t các hành vi, t p trung vào m t ñ ng c a h th ng. Chúng ta xây d ng mô hình ñ hi u rõ hơn v h th ng mà chúng ta ñang xây d ng, t o ra cơ h i ñ có th ñơn gi n hóa và tái s d ng. Chúng ta xây d ng mô hình ñ ki m soát r i ro. Vi c l p mô hình không ch dành cho các h th ng l n. Khi xây d ng mô hình chúng ta s ñ t ñư c 4 m c ñích sau: • Mô hình giúp chúng ta tr c quan hóa h th ng như là nó v n có hay theo cách mà chúng ta mu n nó s như v y. Mô hình chuy n ñ i t mô hình sang m t cài ñ t c th .
  2. Chúng ta xây d ng mô hình c a nh ng h th ng ph c t p b i vì chúng ta không th lĩnh h i m t lúc toàn b h th ng ñó. Ví d như khi xây m t nhà kho chúng ta có th b t tay vào xây ngay, khi xây m t ngôi nhà chúng ta có th c n b n thi t k c a ngôi nhà ñó. Khi c n xây môt tòa nhà cao t ng, chúng ta ch c ch n c n b n thi t k c a toà nhà ñó. ði u này cũng ñúng trong lĩnh v c ph n m m. H th ng càng ph c t p thì vi c xây d ng mô hình càng quan tr ng. Xây d ng mô hình cho phép ngư i thi t k th y ñư c b c tranh t ng quan c a h th ng, th y ñư c các thành ph n c a h th ng tương tác v i nhau như th nào hơn là vi c sa l y vào chi ti t bên trong c a các thành ph n ñó. Trong th gi i luôn bi n ñ ng c a các ng d ng hư ng ñ i tư ng thì vi c phát tri n và b o trì các ng d ng có ch t lư ng cao trong m t kho ng th i gian h p lý ngày càng tr nên khó khăn hơn. M t t ch c phát tri n ph n m m thành công là t ch c xây d ng ñư c các ph n m m có ch t lư ng, tho mãn ñư c m i yêu c u c a khách hàng. • Mô hình hóa là ph n trung tâm trong các công vi c, các ho t ñ ng ñ d n t i m t ph n m m t t. Chúng ta xây d ng mô hình ñ trao ñ i, bàn b c v c u trúc và ng x (behavior) mong mu n c a h th ng. Chúng ta xây d ng mô hình ñ tr c quan hóa cho phép chúng ta ch rõ c u trúc và ng x c a h th ng • Mô hình cho chúng ta m t khuôn m u ñ hư ng d n chúng ta trong quá trình xây d ng h th ng. • Mô hình ñưa ra các d n ch ng b ng tài li u v các quy t ñ nh mà chúng ta ñã ñưa ra trong quá trình thi t k h th ng. Thông qua vi c mô hình hóa, chúng ta thu h p bài toán mà chúng ta ñang nghiên c u b ng cách ch t p trung vào m t khía c nh t i m t th i ñi m. ði u này cũng gi ng như phương pháp “chia ñ tr ” mà Edsger Diskstra ñã ñưa ra: “Gi i quy t m t v n ñ khó b ng cách chia nó thành nh ng bài toán nh hơn mà b n có th gi i quy t ñư c.” Mô hình hóa là vi c ñơn gi n hóa th c t , lo i b nh ng ñi m th y u, tuy nhiên ta ph i ch c ch n r ng không b sót m t chi ti t quan tr ng nào. Tùy thu c vào ñ c ñi m t nhiên c a h th ng, m i mô hình có th t p trung vào nh ng m t khác nhau c a h th ng. Như h th ng t p trung vào d li u thì các mô hình v ph n thi t k tĩnh c a h th ng s ñư c chú ý hơn. Trong h th ng giao di n ngư i dùng thì ph n tĩnh và ñ ng c a Use case s là quan
  3. tr ng. Trong h th ng th i gian th c, các ti n trình ñ ng là quan tr ng. Cu i cùng, trong h th ng phân tán d a trên c s Web thì các mô hình v th c thi và tri n khai là quan tr ng nh t. Unified Modeling Language là gì? UML là m t ngôn ng dùng ñ • Tr c quan hóa • C th hóa • Sinh mã d ng nguyên m u • L p và cung c p tài li u UML là m t ngôn ng bao g m m t b ng t v ng và các quy t c ñ k t h p các t v ng ñó ph c v cho m c ñích giao ti p. M t ngôn ng dùng cho vi c l p mô hình là ngôn ng mà b ng t v ng( các ký hi u) và các quy t c c a nó t p trung vào vi c th hi n v m t khái ni m cũng như v t lý c a m t h th ng. Mô hình hóa mang l i s hi u bi t v m t h th ng. M t mô hình không th giúp chúng ta hi u rõ m t h th ng, thư ng là ph i xây d ng m t s mô hình xét t nh ng góc ñ khác nhau. Các mô hình này có quan h v i nhau. UML s cho ta bi t cách t o ra và ñ c hi u ñư c m t mô hình ñươc c u trúc t t, nhưng nó không cho ta bi t nh ng mô hình nào nên t o ra và khi nào t o ra chúng. ðó là nhi m v c a quy trình phát tri n ph n m m.
  4. 1. UML là ngôn ng dùng ñ tr c quan hóa ð i v i nhi u l p trình viên, không có kho ng cách nào gi a ý tư ng ñ gi i quy t m t v n ñ và vi c th hi n ñi u ñó thông qua các ño n mã. H nghĩ ra và h vi t mã. Trên th c t , ñi u này g p m t s v n ñ . Th nh t, vi c trao ñ i v các ý tư ng gi a nh ng ngư i l p trình s g p khó khăn, tr khi t t c ñ u nói cùng m t ngôn ng . Th m chí ngay c khi không g p tr ng i v ngôn ng thì ñ i v i t ng công ty, t ng nhóm cũng có nh ng “ngôn ng ” riêng c a h . ði u này gây tr ng i cho m t ngư i m i vào ñ có th hi u ñư c nh ng vi c ñang ñư c ti n hành. Hơn n a, trong lĩnh v c ph n m m, nhi u khi khó có th hi u ñư c n u ch xem xét các ño n mã l nh. Ví d như s phân c p c a các l p, ta có th ph i duy t r t nhi u ño n l nh ñ hi u ñư c s phân c p c a các l p. Và n u như ngư i l p trình không mô t các ý tư ng mà anh ta ñã xây d ng thành mã l nh thì nhi u khi cách t t nh t là xây d ng l i trong trư ng h p m t ngư i khác ñ m nh n ti p nhi m v khi anh ta r i kh i nhóm. Xây d ng mô hình s d ng ngôn ng UML ñã gi i quy t ñư c các khó khăn trên. Khi tr thành m t chu n trong vi c l p mô hình, m i kí hi u mang m t ý nghĩa rõ ràng và duy nh t, m t nhà phát tri n có th ñ c ñư c mô hình xây d ng b ng UML do m t ngư i khác vi t. Nh ng c u trúc mà vi c n m b t thông qua ñ c mã l nh là khó khăn nay ñã ñư c th hi n tr c quan. M t mô hình rõ ràng, sáng s a làm tăng kh năng giao ti p, trao ñ i gi a các nhà phát tri n. 2. UML là ngôn ng dùng ñ chi ti t hóa Có nghĩa là xây d ng các mô hình m t các t m , rõ ràng, ñ y ñ các m c ñ chi ti t khác nhau. ð c bi t là UML th c hi n vi c chi ti t hoá t t c các quy t ñ nh quan tr ng trong phân tích, thi t k và th c thi m t h th ng ph n m m. 3. UML là ngôn ng dùng ñ sinh ra mã d ng nguyên m u
  5. Các mô hình xây d ng b i UML có th ánh x t i m t ngôn ng l p trình c th như : Java, C++... th m chí c các b ng trong m t CSDL quan h hay CSDL hư ng ñ i tư ng. Vi c các yêu c u có kh năng thư ng xuyên thay ñ i trong quá trình phát tri n h th ng d n ñ n vi c các c u trúc và hành vi c a h th ng ñư c xây d ng có th khác mô hình mà ta ñã xây d ng. ði u này có th làm cho m t mô hình t t tr nên vô nghĩa vì nó không còn ph n ánh ñúng h th ng n a. Cho nên ph i có m t cơ ch ñ ñ ng b hóa gi a mô hình và mã l nh. UML cho phép c p nh t m t mô hình t các mã th c thi.( ánh x ngư c). ði u này t o ra s nh t quán gi a mô hình c a h th ng và các ño n mã th c thi mà ta xây d ng cho h th ng ñó. 4. UML là ngôn ng dùng ñ l p và cung c p tài li u M t t ch c ph n m m ngoài vi c t o ra các ño n mã l nh( th c thi) thì còn t o ra các tài li u sau: • Ghi chép v các yêu c u c a h th ng • Ki n trúc c a h th ng • Thi t k • Mã ngu n • K h o ch d án • Tests • Các nguyên m u • ... 5. ng d ng c a UML M c ñích chính c a UML là ñ xây d ng mô hình cho các h th ng ph n m m, nó có th ñư c s d ng m t cách hi u qu trong nhi u lĩnh v c như: • H th ng thông tin doanh nghi p (enterprise) • Ngân hàng và d ch v tài chính • Vi n thông • Giao thông • Hàng không và qu c phòng • Máy móc ñi n t dùng trong y t • Khoa h c • Các ng d ng phân tán d a trên Web
  6. UML không ch gi i h n trong lĩnh v c ph n m m. Nó còn có th dùng ñ l p mô hình cho các h th ng không ph i là ph n m m như h th ng pháp lu t (lu ng công vi c - workflow), thi t k ph n c ng, ... 6. Các thành ph n c a UML 6.1. Các ph n t mang tính c u trúc L p (Class) Là m t t p h p các ñ i tư ng có cùng m t t p thu c tính, các hành vi, các m i quan h v i nh ng ñ i tư ng khác. H p tác (Collaboration) Th hi n m t gi i pháp thi hành bên trong h th ng, bao g m các l p/ ñ i tư ng m i quan h và s tương tác gi a chúng ñ ñ t ñư c m t ch c năng mong ñ i c a Use case. Giao di n (Interface) Là m t t p h p các phương th c (operation) t o nên d ch v c a m t l p ho c m t thành ph n (component). Nó ch ra m t t p các operation m c khai báo ch không ph i m c th c thi (implementation).
  7. Use case là mô t m t t p h p c a nhi u hành ñ ng tu n t mà h th ng th c hi n ñ ñ t ñư c m t k t qu có th quan sát ñư c ñ i v i m t actor c th nào ñó. Actor là nh ng gì bên ngoài mà tương tác v i h th ng. Use case mô t s tương tác gi a actor và h th ng. Nó th hi n ch c năng mà h th ng s cung c p cho actor. T p h p các Use case c a h th ng s t o nên t t c các trư ng h p mà h th ng có th ñư c s d ng. L p tích c c (Acitive class) là m t l p mà các ñ i tư ng c a nó th c hi n các ho t ñ ng ñi u khi n. L p tích c c cũng gi ng như l p bình thư ng ngo i tr vi c các ñ i tư ng c a nó th hi n các ph n t mà ng x c a chúng có th th c hi n ñ ng th i v i các ph n t khác. L p này thư ng dùng ñ bi u di n ti n trình(process) và lu ng(thread) Thành ph n (Component) là bi u di n v t lý c a mã ngu n. Trong h th ng ta s th y các ki u khác nhau c a component như các thành ph n COM+ hay JavaBeans cũng như là các thành ph n như các file mã ngu n, các file nh phân t o ra trong quá trình phát tri n h th ng.
  8. Nodes là th hi n m t thành ph n v t lý như là m t máy tính hay m t thi t b ph n c ng. 6.2. Các ph n t th hi n hành vi Tương tác (Interaction) bao g m m t t p các thông báo(message) trao ñ i gi a các ñ i tư ng trong m t ng c nh c th nào ñó ñ th c hi n m t ch c năng nào ñó. Máy chuy n tr ng (States machine) th hi n các tr ng thái c a m t ñ i tư ng trong th i gian s ng c a nó nh m ñáp ng các s ki n, các tác ñ ng t bên ngoài. 6.3 Ph n t mang tính nhóm (Group) Gói (Package) Dùng ñ nhóm các ph n t có m t ý nghĩa chung nào ñó vào thành nhóm. Không gi ng như các thành ph n (component - t n t i trong lúc th c thi), m t package ch mang tính tr u tư ng. Package dùng ñ nhìn h th ng m t m c ñ t ng quát hơn so v i vi c xem xét t ng ph n t trong package.
  9. Annotational (mang tính ch t gi i thích): là các chú thích dùng ñ mô t , làm sáng t và ghi chú v b t c ph n t nào trong mô hình. Thư ng dùng nh t là Note g m các ràng bu c ho c ghi chú, ñư c g n v i m t ph n t ho c m t t p h p các ph n t . 6.4 Các m i quan h (Relationships) Quan h Ph thu c (Dependency) Th hi n m i quan h mà : n u có m t s thay ñ i ñ i tư ng ñ c l p s nh hư ng t i ñ i tư ng ph thu c. Kí hi u: Quan h K t h p ( Association) Là m i quan h liên k t gi a 2 l p. Nói m t cách ñơn gi n, khi m t ñ i tư ng c a l p này g i thông ñi p t i ho c nh n thông ñi p t m t ñ i tư ng c a l p kia thì ta nói gi a 2 l p có m i quan h association. Quan h T p h p (Aggreagation)
  10. là m t d ng ñ c bi t c a quan h liên k t. Nó th hi n s liên k t “ch t” hơn, ñó là m i quan h toàn th -b ph n. Quan h G p (Composition) là m t d ng ñ c bi t c a quan h aggregation. Trong ñó n u như ñ i tư ng toàn th b h y thì các ñ i tư ng b ph n c a nó cũng b h y theo. Quan h Th a k (Generalization) là m i quan h t ng quát hóa/ c th hóa, trong ñó ñ i tư ng c th s k th a các thu c tính và phương th c( behavior) c a ñ i tư ng t ng quát. Quan h Hi n th c hóa (Realization) M i quan h gi a interface và class hay component hi n th c hoá nó ho c m i quan h gi a Use case và Collaboration hi n th c hóa Use case ñó. 6.5 Các bi u ñ (Diagrams) Bi u ñ l p (Class Diagram) Bao g m m t t p h p các l p, các giao di n, các collaboration và m i quan h gi a chúng. Nó th hi n m t tĩnh c a h th ng. Bi u ñ ñ i tư ng (Object Diagram) Bao g m m t t p h p các ñ i tư ng và m i quan h gi a chúng. ð i tư ng là m t th hi n c a l p, bi u ñ ñ i tư ng là m t th hi n c a bi u ñ l p. Bi u ñ Use case (Use Case Diagram)
  11. Khái ni m actor: là nh ng ngư i, h th ng khác bên ngoài ph m vi c a h th ng mà có tương tác v i h th ng. Bi u ñ Use case bao g m m t t p h p các Use case, các actor và th hi n m i quan h tương tác gi a actor và Use case. Nó r t quan tr ng trong vi c t ch c và mô hình hóa hành vi c a h th ng Bi u ñ trình t (Sequence Diagram) là m t d ng bi u ñ tương tác (interaction), bi u di n s tương tác gi a các ñ i tư ng theo th t th i gian. Nó mô t các ñ i tư ng liên quan trong m t tình hu ng c th và các bư c tu n t trong vi c trao ñ i các thông báo(message) gi a các ñ i tư ng ñó ñ th c hi n m t ch c năng nào ñó c a h th ng. Bi u ñ h p tác (Collaboration) G n gi ng như bi u ñ Sequence, bi u ñ Collaboration là m t cách khác ñ th hi n m t tình hu ng có th x y ra trong h th ng. Nhưng nó t p trung vào vi c th hi n vi c trao ñ i qua l i các thông báo gi a các ñ i tư ng ch không quan tâm ñ n th t c a các thông báo ñó. Có nghĩa là qua ñó chúng ta s bi t ñư c nhanh chóng gi a 2 ñ i tư ng c th nào ñó có trao ñ i nh ng thông báo gì cho nhau. Bi u ñ chuy n tr ng thái (Statechart) Ch ra m t máy chuy n tr ng, bao g m các tr ng thái, các bư c chuy n tr ng và các ho t ñ ng. Nó ñ c bi t quan tr ng trong vi c mô hình hóa hành vi c a m t l p giao di n(interface class) hay collaboration và nó nh n m nh vào các ñáp ng theo s ki n c a m t ñ i tư ng, ñi u này r t h u ích khi mô hình hóa m t h th ng ph n ng(reactive). Bi u ñ ho t ñ ng (Activity) Là m t d ng ñ c bi t c a bi u ñ chuy n tr ng. Nó ch ra lu ng ñi t ho t ñ ng này sang ho t ñ ng khác trong m t h th ng. Nó ñ c bi t quan tr ng trong vi c xây d ng mô hình ch c năng c a h th ng và nh n m nh t i vi c chuy n ñ i quy n ki m soát gi a các ñ i tư ng Bi u ñ thành ph n (Component)
  12. ch ra cách t ch c và s ph thu c c a các thành ph n(component). Nó liên quan t i bi u ñ l p, trong ñó m t thành ph n thư ng ánh x t i m t hay nhi u l p, giao di n , collaboration. Quan h Th a k (Generalization) ch ra c u hình c a h th ng khi th c thi. 7. Các quy t c c a UML Các thành ph n c a UML không th ng u nhiên ñ t c nh nhau. Như b t c m t ngôn ng nào, UML có nh ng quy t c ch ra r ng m t mô hình t t s như th nào. M t mô hình t t là mô hình mang tính nh t quán và có s k t h p hài hòa gi a các mô hình có liên quan c a nó. UML có m t s quy t c dành cho vi c: • ð t tên: ñ có th truy xu t các ph n t c a mô hình thì ph i ñ t tên cho chúng như tên c a các quan h , bi u ñ ... • Xác ñ nh ph m vi: ng c nh mang l i m t ý nghĩa c th cho m t cái tên • Tính nhìn th y ñư c: ñ có ñư c s ñơn gi n và d ki m soát thì nh ng ng c nh khác nhau c n ch ra r ng m t cái tên là hi n h u và ñư c s d ng b i nh ng ñ i tư ng khác như th nào. • Tính toàn v n: m i th quan h m t cách ñúng ñ n và nh t quán v i nhau như th nào. 8. Các k thu t chung c a UML 8.1 C th hóa Như ñã trình bày ph n trên, vi c th hi n tr c quan giúp chúng ta hi u v n ñ d dàng hơn ch không có nghĩa là các mô t b ng l i là không có ích.Cho nên UML không ch là m t t p các kí hi u ñ h a. Bên c nh các kí hi u ñ h a còn có các phát bi u b ng l i ñ ch rõ ng nghĩa c a các kí hi u ñó. Ví d như trong kí hi u c a m t l p( m t hình ch nh t) còn có th ñư c ch rõ ra các thu c tính, các phương th c c a l p ñó. 8.2 Trang trí
  13. T t c các ph n t trong UML ñ u có m t hình d ng phân bi t ñ i v i các ph n t khác. ð ng th i chúng cũng ñư c thi t k ñ th hi n nh ng m t quan tr ng nh t c a ñ i tư ng. Ví d như kí hi u cho m t l p là m t hình ch nh t r t d v b i vì l p là m t thành ph n quan tr ng, xu t hiên r t nhi u trong các mô hình hư ng ñ i tư ng. Và kí hi u này th hi n ñư c c 3 thành ph n quan tr ng c a l p ñó là tên l p, các thu c tính và các phương th c c a nó. Ngoài ra nó còn bao g m các chi ti t như: l p ñó có ph i là l p tr u tư ng không, các thu c tính, phương th c c a nó thu c lo i gì (public, private hay protected). Nói tóm l i các kí hi u trong UML giúp ta nh n bi t các ñ c ñi m quan tr ng c a ñ i tư ng, khái ni m ñư c mô t m t cách d dàng và nhanh chóng. 8.3 Phân chia Phân bi t rõ ph n tr u tư ng và c th . Trư c tiên là l p và ñ i tư ng. M t l p là m t s tr u tư ng hóa, m t ñ i tư ng là m t th hi n c th c a s tr u tư ng ñó. Trong UML ta có th mô hình l p và ñ i tư ng. Có r t nhi u th tương t . Ví d như m t Use case và m t th hi n c a Use case, m t component và m t th hi n c a component 8.4 K thu t m r ng UML cung c p nh ng thành ph n cơ b n ñ l p nên m t mô hình cho m t ph n m m. Nhưng nó không th nào bao quát h t theo th i gian m i mô hình trong m i lĩnh v c. Do ñó UML ñư c thi t k m theo nghĩa là ngư i dùng có th m r ng m t s thành ph n ñ có th áp d ng m t cách t t nh t cho h th ng c a h mà l i không ph i thay ñ i hay thi t k l i các thành ph n cơ s c a UML. Cơ ch ñó bao g m: • Stereotypes (khuôn m u): m r ng t p t v ng c a UML, cho phép t o nh ng thành ph n m i k th a nh ng ñ c ñi m c a nh ng thành ph n ñã có ñ ng th i ch a thêm nh ng ñ c ñi m riêng g n v i m t bài toán c th nào ñó. • Tagged values (giá tr th ): m r ng thu c tính c a các thành ph n c a UML, nó cho phép ta t o thêm nh ng thông tin m i v m t ph n t . Ví d như khi làm vi c h p tác ñ t o ra m t s n ph m, ta mu n ch ra các phiên b n và tác gi c a m t ñ i tư ng nào ñó. ði u này
  14. không ñư c xây d ng s n trong UML mà có th th c hi n thông qua vi c thêm vào m t giá tr th . • Constraints (ràng bu c): m r ng ng nghĩa c a các thành ph n c a UML, cho phép t o ra nh ng quy t c m i ho c s a ch a nh ng quy t c ñã có. 9. Ki n trúc c a h th ng Khi xem xét m t h th ng, chúng ta c n xây d ng các mô hình t nh ng khía c nh khác nhau, xu t phát t th c t là nh ng ngư i làm vi c v i h th ng v i nh ng vai trò khác nhau s nhìn h th ng t nh ng khía c nh khác nhau. UML xét h th ng trên 5 khía c nh: 1. Use-Case View Bao g m các Use Case mô t ng x c a h th ng theo cách nhìn nh n c a ngư i dùng, ngư i phân tích h th ng. Nó không ch ra cách c u trúc c a h th ng ph n m m, nó ch dùng ñ nhìn nh n m t cách t ng quát nh ng gì mà h th ng s cung c p, thông qua ñó ngư i dùng có th ki m tra xem các yêu c u c a mình ñã ñư c ñáp ng ñ y ñ hay chưa ho c có ch c năng nào c a h th ng là không c n thi t. Bi u ñ dùng ñ n là bi u ñ Use Case. 2. Logical View ðư c dùng ñ xem xét các ph n t bên trong h th ng và m i quan h , s tương tác gi a chúng ñ th c hi n các ch c năng mong ñ i c a h th ng.
  15. 3. Process View Chia h th ng thành các ti n trình(process) và lu ng(thread), mô t vi c ñ ng b hóa và các x lý ñ ng th i. Dùng cho ngư i phát tri n và tích h p h th ng, bao g m các bi u ñ sequence, collaboration, activity và state. 4. Implementation View Bao g m các component và file t o nên h th ng v t lý. Nó ch ra s ph thu c gi a các thành ph n này, cách k t h p chúng l i v i nhau ñ t o ra m t h th ng th c thi. 5. Deployment View Ch ra c u hình ph n c ng mà h th ng s ch y trên ñó. Nó th hi n s phân tán, cài ñ t các ph n mà t o nên ki n trúcv t lý c a h th ng. Bi u ñ ñư c s d ng là bi u ñ Deployment.
  16. UML Bài 2: Tìm Use Case ng x c a h th ng, t c là nh ng ch c năng mà h th ng cung c p s ñư c mô t trong mô hình Use case. Trong ñó mô t nh ng ch c năng (Use case), nh ng thành ph n bên ngoài( Actor) tương tác v i h th ng và m i quan h gi a Use case và Actor (bi u ñ Use case). M c ñích quan tr ng nh t c a mô hình Use case là ph c v cho vi c trao ñ i thông tin. Nó cung c p phương ti n ñ khách hàng, nh ng ngư i dùng tương lai c a h th ng và nh ng ngư i phát tri n h th ng có th trao ñ i v i nhau và bi n nh ng yêu c u v m t nghi p v c a ngư i dùng thành nh ng yêu c u c th mà l p trình viên có th hi u m t cách rõ ràng. Actor 1. ð nh nghĩa actor Actor không ph i là m t ph n c a h th ng. Nó th hi n m t ngư i hay m t h th ng khác tương tác v i h th ng. M t Actor có th : • Ch cung c p thông tin cho h th ng. • Ch l y thông tin t h th ng. • Nh n thông tin t h th ng và cung c p thông tin cho h th ng 2. Mô t Thông thư ng, các actor ñư c tìm th y trong phát bi u bài toán b i s trao ñ i gi a phân tích viên v i khách hàng và các chuyên gia trong lĩnh v c(domain expert). Các câu h i thư ng ñư c s d ng ñ xác ñ nh actor cho m t h th ng là: • ð i v i m t v n ñ c th nào ñó thì Ai là ngư i quan tâm ? • H th ng ñư c dùng nơi nào trong t ch c? • Ai là ngư i ñư c l i khi s d ng h th ng? • Ai là ngư i cung c p thông tin cho h th ng, s d ng thông tin c a h th ng và xóa các thông tin ñó? • Ai là ngư i h tr và b o trì h th ng? • H th ng có s d ng ngu n l c nào t bên ngoài?
  17. • Có ngư i nào ñóng m t vài vai trò trong h th ng? Có th phân thành 2 actor • Có vai trò nào mà nhi u ngư i cùng th hi n? Có th ch là m t actor • H th ng có tương tác v i các h th ng nào khác không? Có 3 lo i Actor chính là: • Ngư i dùng. Ví d : sinh viên, nhân viên, khách hàng... • H th ng khác. • S ki n th i gian. Ví d : K t thúc tháng, ñ n h n... ði u gì t o nên m t t p h p Actor t t? C n ph i cân nh c k lư ng khi xác ñ nh actor c a h th ng. Công vi c này thư ng ñư c th c hi n l p ñi l p l i. Danh sách ñ u tiên v các actor hi m khi là danh sách cu i cùng. Ví d như trong bài toán ñăng kí các môn h c c a m t trư ng ñ i h c, có m t câu h i là li u các sinh viên m i vào trư ng là m t actor và sinh viên cũ là m t actor khác? Gi s câu tr là có thì bư c ti p theo là xác ñ nh xem cách th c mà hai actor này tương tác v i h th ng. N u chúng s d ng h th ng theo nh ng cách khác nhau thì chúng là hai actor ngư c l i s ch là m t actor mà thôi. Mô t Actor: Vi c mô t m t cách ng n g n v m i actor c n thêm vào mô hình. Mô t này c n ch rõ vai trò c a actor khi tương tác v i h th ng. Ví d : Sinh viên: là nh ng ngư i ñăng kí h c các l p trư ng ñ i h c. 3. Kí hi u Actor cũng có m i quan h k th a. Ví d như có th có hai actor là nhân viên tr lương tháng, nhân viên làm h p ñ ng. C hai ñ u thu c m t ki u là Nhân viên. Actor Nhân viên là m t actor tr u tư ng vì nó không có m t th hi n nào trong th c t , nó ñư c dùng ñ ch ra r ng có m t s ñi m chung gi a hai actor trên. Nói chung vi c mô t quan h k th a gi a các Actor là không c n thi t, tr trư ng h p chúng th c hi n nh ng tương tác khác nhau ñ i v i h th ng.
  18. Ví d : Use case 1. ð nh nghĩa Là m t kh i ch c năng ñư c th c hi n b i h th ng ñ mang l i m t k t qu có giá tr ñ i v i m t actor nào ñó. 2. Mô t Use case mô t s tương tác ñ c trưng gi a ngư i dùng và h th ng. Nó th hi n ng x c a h th ng ñ i v i bên ngoài, trong m t hoàn c nh nh t ñ nh, xét t quan ñi m c a ngư i s d ng. Nó mô t các yêu c u ñ i v i h th ng, có nghĩa là nh ng gì h th ng ph i làm ch không ph i mô t h th ng làm như th nào. T p h p t t c Use case c a h th ng s mô t t t c các trư ng h p mà h th ng có th ñư c s d ng. M t Use case có th có nh ng bi n th . M i m t bi n th ñư c g i là m t k ch b n (scenario). Ph m vi c a m t Use case thư ng ñư c gi i h n b i các ho t ñ ng mà ngư i dùng th c hi n trên h th ng trong m t chu kì ho t ñ ng ñ th c hi n m t s ki n nghi p v . M t Use case mô t m t nghi p v thông thư ng. Nghi p v này bao g m các bư c riêng r , còn ñư c g i là các ho t ñ ng. Khi các bư c ñư c mô t dư i d ng văn b n thì vi c ch ra s ph thu c gi a các bư c là m t vi c m t nhi u th i gian. Vi c th hi n các bư c dư i d ng kí hi u là d dàng và d hi u hơn. Do ñó Use case thư ng ñư c mô t chi ti t thông qua các bi u ñ mô t hành vi (behavior) như bi u ñ ho t ñ ng (activity diagram), bi u ñ trình t (sequence diagram), bi u ñ h p tác(collaboration diagram).
  19. Use case cũng có th ñư c mô t thông qua các thi t k nguyên m u màn hình, các ví d v bi u m u báo cáo. ði u này giúp cho ngư i dùng d dàng mư ng tư ng h th ng s làm vi c như th nào, qua ñó có th ki m tra tính ñúng ñ n c a Use case. Các câu h i thư ng ñư c s d ng ñ xác ñ nh Use Case cho m t h th ng là: • Nhi m v c a m i actor là gì? • Có actor nào s t o, lưu tr , thay ñ i, xóa ho c ñ c thông tin trong h th ng? • Có actor nào c n báo tin cho h th ng v m t thay ñ i ñ t ng t t bên ngoài? • Có actor nào c n ñư c thông báo v m t s vi c c th x y ra trong h th ng? • Trư ng h p s d ng nào s h tr và b o trì h th ng? • T t c các yêu c u v m t ch c năng có ñư c th hi n h t thông qua các trư ng h p s d ng chưa? ði u gì t o nên m t Use Case t t Có m t câu h i thư ng xuyên ñư c ñ t ra v m c ñ chi ti t c a Use case. Nó nên m c ñ nào là t t. Có l không có câu tr l i hoàn toàn ñúng, nhưng có m t s nh n xét như sau: "M t Use case thư ng bi u hi n m t ch c năng ñư c th c hi n tr n v n (không ng t quãng) t ñ u ñ n cu i. M t Use case ph i mang l i m t ñi u gì ñó có giá tr ñ i v i actor". Mô t Use case Use case c n có m t vài câu ng n g n mô t m c ñích c a Use case, cho ta bi t ch c năng do Use case cung c p. 3. Kí hi u M t Use case ñư c th hi n b i m t hình ellip kèm theo tên c a Use case. thích ñ mô t chi ti t hơn v ý nghĩa Ngoài ra còn có th có thêm các chú c a Use case. M i Use case trong h th ng có tên phân bi t duy nh t. Use case có th ñư c ñánh s ñ thu n ti n cho vi c tra c u nhanh trên bi u ñ ho c trong tài li u mô t . Ví d :
  20. 4. Lu ng s ki n cho m t Use case (The Flow of events) Use case ch cung c p m t khung nhìn m c cao, t ng quát. ð hi u rõ hơn h th ng c n ph i làm gì thì c n ph i mô t chi ti t hơn, g i là lu ng s ki n. Nó là m t tài li u mô t các ho t ñ ng c n thi t ñ ñ t ñư c ng x mong ñ i c a Use case. Tuy là mô t chi ti t nhưng lu ng s ki n v n ñư c vi t sao cho có th ch ra nh ng gì h th ng c n làm ch không ph i ch ra h th ng làm như th nào. Ví d : trong lu ng s ki n chúng ta nói “Ki m tra mã c a ngư i dùng” ch không nói r ng vi c ñó ph i th c hi n b ng cách xem xét trong m t b ng nào ñó trong cơ s d li u. Nó mô t chi ti t nh ng gì ngư i dùng c a h th ng s làm và nh ng gì h th ng s làm. Nó c n ph i ñ c p t i: • Use case b t ñ u và k t thúc khi nào và như th nào • Có nh ng s tương tác nào gi a Use case và actor ñ th c hi n ch c năng ñó. • Nh ng d li u nào c n thi t cho Use case • Th t th c hi n thông thư ng c a các s ki n • Các mô t v các lu ng ngo i l ho c r nhánh. M i d án c n có m t m u chu n cho vi c t o tài li u v lu ng s ki n. Có th dùng theo m u ñơn gi n như sau: • X. Lu ng s ki n cho Use case ABC • X1. ði u ki n b t ñ u: danh sách nh ng ñi u ki n ph i th a mãn trư c khi Use case ñư c th c hi n. Ví d như: m t Use case khác ph i th c hi n trư c khi Use case này ñư c th c hi n hay ngư i dùng ph i có ñ quy n ñ th c hi n Use case này. Không nh t thi t m i Use case ñ u ph i có ñi u ki n b t ñ u. • X2. Lu ng chính: mô t nh ng bư c chính s x y ra khi th c hi n Use case. • X3. Các lu ng ph ( lu ng con). • X4. Các lu ng r nhánh.
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2