Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 56 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
56
Dung lượng
2,9 MB
Nội dung
TRƯỜNG ĐẠI HỌC KINH TẾ - KỸ THUẬT CÔNG NGHIỆP !"#$%& '()*+ ) !,)-, .) /(0 12(03/!)14(05 67 89:;< =>!;?<<?@<< 1 5 ABCD:9E <5 F!(!.: 12(03/!)14(05 @5 #3!"+GHI ( 12(03/!)14(05 ;5 !2!) !.#(0I((0JC85 5 9CKC8 <58L+ MNOH3P!(0I((0JC8 @50I((0JI ( QH3/!)14(0C8 ;5F+- F!(!.+RST()O(0C8 5 ::::9E5 <5F+S!"#3UC8 @5F+S12+: 12(03/!)14(05 D5 VV:9WD:9E5 2 PHẦN MỘT ABCD:9E 8L+ MN& F))O!"(+GH: 12(03/!)14(05 O12+( J(0(X7Y+ 1H3L( ( ( J(0& 1R(0& F&OZO.)+ & '()*+ $=) !,)-, .) /(0) I(0)!(501P!)H['\]^(0 .) /(0) I(0)!(>)+F+ )_\)!.(5`( J(0(Xa3,((H\Y( !%#& 1R(0& F&& '()*+ $=) !,)-, bc(b14)OH3P!5>)M/& 1R(0& F&3d314+MN]e(0+ 3,()f((0=\(H\Y 3Qb=+F+& 1R(0& F&& '()*+ $=) !,)-,+Q+g#)Oh+iV)O#+)#Oj](Hb\M!M H(]kjM!0(j) ]l5F+& 1R(0& F&(=\( g)m#F()O(0+_(0>)& 1R(0 12(0)1]#\b=& '()*+ +Q+g#)Oh+5: 1R(0& F&& '()*+ ) !,)-,+Q+g# )Oh+)OT!m#H) P!0!H(3d+ n(0)o314+)*( -!( 3!"(+GH(QY])*( )1]#\ ( g)m#F($=+ p)+ qY( (+ #(0- I(0+c#-rY]sF&]e(0Y)#\( !t(+u( v(+ ,- !F&]e(0$2!+F+ .) /(03H]v(0Y& n+)v& D=( J(0(X<wxY+F+(0I((0J 12(03/!)14(0( 1VHbb)Hb-$=yy[#g) !.(5_(0$2!+ h(0Y(T\M!( ( #+c#I ( F+F+ .) /(0& c(%) j 12(03/!)14(05`( J(0(XwY>))O=b1#2!Yv( +F+& 1R(0& F& & '()*+ ) !,)-, 12(03/!)14(0iSzj+)O!j()j](Hb\M!MH(]kjM!0( j) ]l& F))O!"(Y+Q) "-"3,( y+ +GHOH]\+ yiSzj+)]jb!(0j+ (!m#jl+GH{HjM|HSH#0 yV}iSzj+)O!j()j]V~)•HOj}(0!(jjO!(0l+GH$HO{H+SM( €#M!(+GHj•bj)):H+-HO] yH]$=•#O]( ‚!& 1R(0& F&3%#+Q .) /(0-ƒ !.#Y& 1R(0& F&[Nbƒ$=+I(0+e ‚)O4 O!t(0Y+ h(03%#+Q1#3!"$=( 14+3!"O!t(0501P!MN]e(0- Q- X(3" + „(>)& 1R(0& F&& _ 4&5 *( !.() ^+(=\3d314+( J(0(01P!)!t( & (0)O(0b…( $^+I ( F 12(03/!)14(0( f(OH$= „m#\,)3L( )*+ 4&( J(01#3!"+GH‚!& 1R(0& F&$=31HOH>)I ( ) /(0( g)+ b…( $^++I(0(0 .& c(%5D=-,)m#Tb=(0I((0JI ( 4&( g)C8 iC(!~!j]]jb!(08H(0#H0jl314+3%[#g)$=(X<ww†S‡!OH]\+ Y$HO {H+SM($={HjM|#SH#0 Y$=MH#3Q314+m#\+ #ˆ(S‡!( Qm#T()OL3/! 3 )14(0iSzj+)H(H0jj()O#&l5: !t(ST(C8<5<314++ g&( f( $=) F(0<<?<wwa5C8<5;[#g) !.((X<www$=<5†$=) F(0@?@ F!(!.: 12(03/!)14(05 <5 >)M/- F!(!.+RST(+GH 12(03/!)14(05 Đốitượng (object): >)3/!)14(0S!"#]!s(>)) ^+) "$f)bƒY>)) ^+ ) "- F!(!. p+>)) ^+) "& c(%5Q) "3L( (0 …H>)3/!)14(0b= >)- F!(!.YM^)O`#)14(0 p+>)$f)$2!0!2! v(OZO=(0$=+Qƒ(0 …H$2! >)n(0]e(0+e) "5 Lớp (Class): b=I)T+GH>)( Q3/!)14(0+Q+ #(0+F+) #>+)*( Y =( $!$=+F+/!m#H( .5 1$f\Y>)3/!)14(0b=) " !.(+GH>)b2&$=>) b2&b=>)3L( (0 …H)O`#)14(0+GH3/!)14(05 Thành phần (component): b=>)& c(+GH .) /(0 v)3>(03>+bf&$=0!J >)+ n+(X(0( g)3L( )O(0 .) /(05 Gói (package): b= >) +F+ )‰ + n+ +F+ ) =( & c(Y & c( )N )O(0 . ) /(0) =( +F+( Q5 !%#0Q!+Q) "314+-,) 4&$2!( H#3")O‡) =( >) . ) /(0+(iM#SM\M)jl5 Kế thừa: O(0& 1R(0& F& 12(03/!)14(0Y>)b2&+Q) "+QMN]e(0 bv!+F+) #>+)*( $=& 1R(0) n++GH>) p+( !%#b2&- F+5!"#m#H( .(=\ 0„!b=m#H( .-,) `HY314+['\]^(0]^H)Ot(/!m#H( .-,) `H)O(0S=!)F( ) ^+),5D*]eY0!T!MN)H+Q b2&Người 0U+F+) #>+)*( tên, ngày sinh, quê quán, giới tính Š82&Nhân Viên +Qm#H( .-,) `H)`b2&Người Mq+Q)g)+T +F+ ) #>+ )*( )Ot( $= S‰ M#(0 ) t +F+ ) #>+ )*( 2! 0U chức vụ, lương. Du(03P!& F))O!"(& c(% 12(03/!)14(0+‹(0+Q+F+& H)1R(0)^( 1 +F+$u(0 3P! & F) )O!"( & c( % (Q! + #(05 F+ & H +R ST( 3p+ )O1(0 )O(0 & F))O!"(& c(% 12(03/!)14(0SH0U yPhân tíchhướngđối tượng: ['\]^(0>)I ( + *( [F+3"I)T .) /(0 +c( ['\ ]^(0b= 05 =( & c(+GH I ( (=\ b= +F+ 3/! )14(0 0Œ( $2! .) /(0) ^+5 y Thiếtkếhướngđối tượng: 8=0!H!3v()‰+ n++ 1R(0)O( ) =( +F+ )f& 4&3/!)14(0+>(0)F+Y ‚! 3/!)14(0)O(03Qb= ) ^+ ) "+GH>)b2&5 ,)m#T+GH& H) !,)-,+ S!,) .) /(0Mq314+['\]^(0( 1) ,(=m#H 4 +F+ST() !,)-,-!,()Oh+$=) !,)-,+ !)!,)5 y Lập trình và tích hợp: ^+ !.(ST() !,)-, 12(03/!)14(0S•(0+F+ MN]e(0+F+(0I((0Jbf&)O( 12(03/!)14(0iyyY{H$HYŽl Hướngđốitượng b=) #f)(0J) I(0]e(0 !.() P!+GH(0=( +I(0(0 !.& & c(%5F++I(0)\3H(0( H( + Q(0)+F+ F&]e(0$=)*+ 4&+I(0(0 . 2!(=\$=+F+n(0]e(0+GH „5 f)M^b=3H& c(+F+n(0]e(0 !.() P!3%# H(0)*( 12(03/!)14(05 1(0 12(03/!)14(0+Q(0 …Hb=0• 8/!)!,&+f( 12(03/!)14(0b=>)b/!)1]#\$%$g(3%) jb/!F( [v+F+ ) =( & c()O(0S=!)F($=+F+3/!)14(0(0=!3P!) ^+5D2!b/!)!,&+f((=\Y + h(0)H+ !Hn(0]e(0) =( +F+) =( & c(( oY0„!b=+F+3/!)14(0Y+ h(0)1R(0 3/!3>+bf&$2!( H#5VH#3Q)H+Q) "['\]^(0n(0]e(0S•(0+F+ + Œ&+F+3/! )14(03Qbv!$2!( H#5d\(0 …3,()Ou+ R!['\b'#3=!S•(0+F+•#0‚512+3c# )!t(b=)v H\#H>)$=!bv!•#0‚+X(ST(Y)`3Q)v(t(+F+- /!['\]^(0+X( ST(+GH( 5>)- !3d+Q+F+- /!['\]^(03QYSv(+Q) "+ Œ&OF&+ h(0bv!$2! ( H#3")vb'#3=!51R(0)^( 1$f\>)- !3d['\]^(0>)M/3/!)14(0+X(ST( )O(0) ,0!2!F\)*( YSv(+Q) "+ Œ&+ h(0bv!$2!( H#3")vn(0]e(0+GH ( 5 ‘!(bg\>)$*]e3R(0!T($g(3%Oh))!%(p))v!( =SX(05F+’•#0‚’ ) =( & c(‡3'\Mqb=F( [v+GH+F+3/!)14(0(0=!3P!) ^+( 1)=!- T(Y( '( $!t(Y- F+ =(0YŽD=n(0]e(0Mq314+Mq314+( f(]!.(+‹(0( 10!T!3F&[H\ m#H( +F+3/!)14(03Q5 Phương pháp hướngđối tượng: F+ $2! & 1R(0 & F& 12(0 +g# )Oh+ + “ )f& )O#(0 p+ $= ]J b!.# p+ $= =( 3>(0Y& 1R(0& F& 12(03/!)14(0)f&)O#(0$=+T H!- *H+v( +GH .) /(0b=]Jb!.#$= =( 3>(05 F+ )!,&+f( 12(03/!)14(0b=>)b/!)1]#\) j+F+ F( [v+F+) =( & c()O(0S=!)F($=+F+3/!)14(0(0=!3P!) ^+5D2!+F+ )!,&+f((=\Y>) . ) /(0314++ !H)1R(0n(0) =( +F+) =( & c(( o0„!b=+F+đối tượngY‚!3/! )14(0SH0U3c\3G+T ]J b!.#$= =( 3>(0b!t(m#H(3,(3/!)14(03Q5F+ 3/! )14(0)O(0 >) .) /(0 )1R(0 3/! 3>+ bf& $2! ( H# $= & c(% Mq314+ ['\]^(0S•(0+F+ -,) 4&+F+3/!)14(03Qbv!$2!( H#) I(0m#H+F+/!m#H( . $= )1R(0)F+ 0!JH + h(05F+ (0#\t()Œ++R ST(+GH & 1R(0& F& 12(03/! )14(0SH0U Trừu tượng hóa (abstraction): )O(0& 1R(0& F& 12(03/!)14(0Y+F+ ) ^+) "& c(%314+I ( QH]12!]v(0+F+3/!)14(05F+3/!)14(0(=\ 5 314+)O`#)14(0 QH‡n++H R(]^H)Ot() #>+)*( $=& 1R(0) n+I)T3/! )14(03")v) =( +F+b2&5F+b2&+‹(0Mq314+)O`#)14(0 QH‡n++H R( (JH 3" )v ) =( >) MR 3U +F+ b2&314+-,) `H b•( ( H#5 O(0& 1R(0& F& 12(03/!)14(0+Q) ")U()v!( J(0b2&- I(0+Q3/!)14(0)1R(0n(0Y0„!b=lớp trừu tượng. 1$f\Y(0#\t()Œ++RST(3"['\]^(0+F+- F!(!.)O(0 12(03/! )14(0b=M^)O`#)14(0 QH) j+F+n+3>- F+( H#5 Tính đóng gói (encapsulation) và ẩn dấu thông tin: +F+3/!)14(0+Q ) " +Q( J(0& 1R(0) n+ p+) #>+)*( O!t(0ikiểu privatel=+F+3/!)14(0 - F+- I(0) "MN]e(0314+5k^H)Ot((0#\t()Œ+ˆ(0!g#) I(0)!((=\Y+=!3p) +GH+F+3/!)14(0Mq =()=(3>+bf&$2!+F+3/!)14(0- F+Y+F+b2&3>+bf&$2! ( H#$=+H R((JHb=+=!3p)+GH .) /(0 =()=(3>+bf&$2!(01P!MN]e(0 +‹(0( 1+F+ .) /(0- F+MN]e(0-,)m#T+GH(Q5 Tính modul hóa (modularity): +F+ S=! )F( Mq 314+ & '( + !H ) =( ( J(0$g(3%( o R(Y3R(0!T($=m#T(bƒ314+5 Tính phân cấp (hierarchy): +g#)Oh++ #(0+GH>) .) /(0 12(03/! )14(0b=]v(0& '(+g&) j+F+n+3>)O`#)14(0)`+H3,() g&5 II. GIỚI THIỆU NGÔN NGỮ UML 1.Lịch sử ra đời ngôn ngữ UML D!.+F&]e(0O>(0Od!& 1R(0& F& 12(03/!)14(03d3p)OH\t#+c# +c(& T!['\]^(0>)& 1R(0& F&I ( QH3"+Q) "MN]e(0( 1>)+ #ˆ( + #(0+ ( J(0(01P!& F))O!"(& c(% 12(03/!)14(0)Ot(- Œ&) ,0!2!5 O(0- ! +F+ (0I( (0J 12(0 3/! )14(0 OH 3P! - F M2Y $* ]e ( 1 V!#bH7a i(X <w7alYVHbb)Hb-i3c#( J(0(X<wxlYyyY8Vi0!JH( J(0(X<wxlŽ) ( J(0& 1R(0& F&b#f(+ & F))O!"( 12(03/!)14(0bv!OH3P!- F#>(5#/! ( J(0(XxY3c#( J(0(X<wwY>)bv)+F+& 1R(0& F&b#f($=(0I((0J I ( QH 12(03/!)14(02!OH3P!Y( 1+ +GHOH]\+ Y+GH {HjM |HSH#0 Y V} +GH $HO {H+SM(Y H\ H(] k +GH H] $= •O](5 ‚! & 1R(0& F& b#f( $= (0I((0J)Ot(3%# +Q . ) /(0-ƒ !.# O!t(0Y& 1R(0 & F&[NbƒO!t(0$=+I(0+e ‚)O4O!t(05 *( 3!%#(=\3d) h+3ˆ\( J(0(01P! )!t(& (0)O(0b…( $^+I ( F 12(03/!)14(0(0U!bv!+_(0( H#3")*+ 4& ( J(03!" v( +GH ‚! & 1R(0& F& $= 31H OH >) I ( ) /(0 ( g) 6 + #(05‚ b^+ ) /(0( g)3c#)!t(SŒ)3c#- !|#SH#0 0!H ( f&( Q(0 !t( +n#+GH+ )v!)f&3=(|H)!(Hb(X<ww†$=MH#3Q{H+SM(+‹(00!H( f& ( Q(=\$=(X<ww”5 {HjM|#SH#0 YOH]\+ $=$HO{H+SM(3d+_(0+/0Œ(0['\]^(0 314+ >) 0I( 0J I ( F /(0 g) $= 3p) )t( b= C8 iC(!~!jb] ]jb!(08H(0#H0jli( @5<l5C83c#)!t(314+31HOH(X<wwa$=MH#3Q 314++ #ˆ( F3")O‡) =( & !t(ST(<55!.((H\+ h(0)H3H(0MN]e(0(0I( (0J C8& !t(ST(@55 2.Ngôn ngữ mô hình hóa đốitượng UML C8iC(!~!j]]jbb!(08H(0#H0jlb=(0I((0JI ( F)‰(0m#F) 314+['\]^(03"3p+)TY& F))O!"($=$!,))=!b!.#+ +F+- *H+v( )O(0& F))O!"( & c(% 12(03/!)14(05C80!h&(01P!& F))O!"( !"#OZ$=OHm#\,)3L( b!t(m#H(3,(& c(%+c(['\]^(05C8SH0U>))f&+F+- F!(!.Y+F+ -ƒ !.#Y+F+S!"#3U$= 12(0]•(5 C8 ‚)O4['\]^(0 .) /(0 12(03/!)14(0]^H)Ot($!.+(ŒSŒ) 7 - *H+v( +g#)Oh+)…( $=+F+ =( $!3>(0+GH .) /(05 F++g#)Oh+)…( 3L( (0 …H+F+-!"#3/!)14(0m#H()O„(0+GH .) /(0Y ( •+=!3p)$=+ “OH/!m#H( .0!JH+F+3/!)14(03Q5 F+ =( $!3>(0i]\(H!+Sj H$!Ol3L( (0 …H+F+ v)3>(0+GH+F+ 3/!)14(0) j) P!0!H($=)1R(0)F+0!JH+F+3/!)14(0 12(0)2! 3 *+ 5 F+e+3*+ +GH(0I((0JI ( F) /(0( g)C8 y I ( F+F+ .) /(0MN]e(0+F+- F!(!. 12(03/!)14(05 y !,)bf&M^b!t( .)`( f() n++GH+((01P!3,(+F+M^-!.(+c(I ( F5 y !T!m#\,)$g(3%$%n+3>) `H-,)O(0+F+ .) /(0& n+)v&$2!( !%# O=(0S#>+- F+( H#5 y v>)(0I((0JI ( F+Q) "MN]e(0314+S‡!(01P!$=F\5 C8 m#\ 3L( >)bv)+F+-ƒ !.#$=m#\)Œ+3"I ( F+F+& H)O(0m#F )O( & F))O!"(& c(% 12(03/!)14(0]12!]v(0+F+S!"#3U5 3. Khái niệm cơ bản trong UML a)Khái niệm mô hình I ( b=>)S!"#]!s(+GHM^$f) H\>))f&+F+M^$f))O(0>)b…( $^+F&]e(0(=3Q) j>)+F+ - F+5I ( ( •(ŒSŒ)+F+- *H+v( m#H( )O„(0+GHM^$f)YSom#H+F+- *H+v( - I(0m#H()O„(0$=S!"#]!s() j>))f& -ƒ !.# $= m#\ )Œ+ (= 3Q5 F+ I ( ) 1P(0 314+ ['\ ]^(0 MH + +Q ) " $q314+) =( +F+S!"#3U]^H)Ot()f&-ƒ !.#$=m#\)Œ+3d+ 5 !['\]^(0+F+ .) /(0YI ( 314+MN]e(0( •) Td(+F+e+ 3*+ MH# ŒSŒ)+ *( [F+\t#+c#$=)O!) n+!%(= .) /(0+c(& F))O!"( " Lt()1]#\$%) !,)-, .) /(0 O40!h&OHm#\,)3L( ) !,)-,]^H)Ot($!.+& '()*+ \t#+c# ‰+ n+Y)-!,Yb„+Y-!")OH$=MNH3‰!) I(0)!($%+F+ .) /(0 b2(5 8=+ G314++F+ .) /(0& n+)v& F+) =( & c()O(0>)I ( SH0U 0J(0 …H$=S!"#]!s(0J(0 …Hb=( •31HOHƒ(0 …HYST(+ g) $= +F+ )*( + g) +GH )f& +F+ -ƒ !.#5 !"# ]!s( b= & 1R(0 & F& ) " 8 !.(I ( ) j+F+ MH+ +Q) "( () g\314+5 0J+T( I)T)‰+ n+St()O(0Y+F+ MN]e(0I ( )O(0)!,( )O( & c(%Ž b)Các hướng nhìn (View) trong UML F+I ( )O(0C8( •e+3*+ ‚)O4& F))O!"(+F+ .) /(0 & c(% 12(03/!)14(05O(0& 1R(0& F&b#f( 12(03/!)14(0- I(0 +QM^& '(S!.)Ov+ Ou!0!JH+F+& H H\+F+S12+5#\( !t(Y) I(0) 1P(0 C8$•(314++ !H) =( >)M/ 12(0( ($=( !%#bv!S!"#3U5 Một hướng nhìn trong UML là một tập con các biểu đồ UML được xây dựng để biểu diễn một khía cạnh nào đó của hệ thống. V^& '(S!.)0!JH+F+ 12(0( (b=Og)b!( v)5Q) "+Q( J(0S!"# 3UC8+Qp))O(0+T H! 12(0( (5F+ 12(0( (+_(0+F+S!"#3U )1R(0n(0314+I)T)O(0ST(0MH# Khía cạnh chính Hướng nhìn Các biểu đồ Các khái niệm chính Khía cạnh cấu trúc hệthống 12(0( ()…( iM)H)!+ $!j•l !"#3Ub2& b2&Yb!t( .Y-,) `HY& e ) #>+Y0!H]!.( 12(0 ( ( #Mj +HMj iCMj+HMj$!j•l !"# 3U #Mj +HMj CMj +HMjY )F+ ( '(Y b!t( .Y j[)j(]Y!(+b#]jŽ 12(0 ( ( +=! 3p) i!&bjj()H)!($!j•l !"# 3U) =( & c( =( & c(Y0!H]!.(Ym#H( .& e) #>+Ž 12(0 ( ( )O!"( - H! i]j&b\j()$!j•l !"#3U)O!"( - H! ]jY ) =( & c(Ym#H( . & e) #>+Y$L)O*ib+H)!(l Khía cạnh động 12(0 ( ( F\ )Ov(0 ) F!iM)H)jH+ !(j$!j•l !"# 3U )Ov(0 ) F! Ov(0 ) F!Y M^ -!.(Y + #\"( )!,&Y =( 3>(0 12(0 ( ( v) 3>(0 iH+)!$!)\$!j•l !"#3U3>(0 Ov(0 ) F!Y M^ -!.(Y + #\"( )!,&Y-,) 4&Y3U(0S>Ž 12(0 ( ( )1R(0 )F+ i!()jOH+)!($!j•l !"# 3U )#c( )^ 1R(0)F+Y3/! )14(0Y) I(0 3!.&Y-*+ v)Ž !"#3U+>(0 )F+ >(0 )F+Y $H! )Ou +>(0 )F+Y ) I(03!.&Ž 9 Khía cạnh quản lý mô hình 12(0 ( ( m#T( bƒ I ( !"#3Ub2& Q!Y .) /(0+(YI ( Khía cạnh khả năng mở rộng g)+T g)+T F+ O=(0 S#>+Y M)jOj)\&jYŽ Bảng 3.1: Các hướng nhìn trong UML c. Biểu đồ (Diagram) !"#3Ub=S!"#]!s(3U „H)f&+F+-ƒ !.#& c()NI ( QH314+)‰+ n+ ) jm#\3L( b!t(-,)+F+& c()NI ( +GH(0I((0J5C8+Q)g)+Twbv!S!"#3U - F+( H#314+MN]e(0-,) 4&3"S!"#]!s( .) /(0) j( !%# 12(0( (Y- *H+v( - F+( H#YSH0U !"#3U)O1P(0 4&MN]e(0iCMjHMjk!H0OHl F+S!"#3U =( $!ij H$!Ok!H0OHlSH0U y !"# 3U)1R(0)F+i()jOH+)!( k!H0OHl b= S!"# 3U)O( )^ iVjm#j(+j k!H0OHl $=S!"#3U+>(0)F+ibbHSOH)!(k!H0OHl y!"#3U)Ov(0) F!iV)H)jk!H0OHl$=S!"#3U v)3>(0i+)!$!)\k!H0OHl !"#3Ub2&ibHMMk!H0OHl$=S!"#3U3/!)14(0iSzj+)k!H0OHl !"# 3U ) =( & c( i&(j() k!H0OHl $= S!"# 3U )O!"( - H! ikj&b\j() k!H0OHl d. Phần tử mô hình hóa (Model Element) F+-ƒ !.#314+MN]e(0)O(0+F+S!"#3U314+0„!b=+F+& c()NI ( Y) " !.(+F+- F!(!. 12(03/!)14(0m#j() #>+5D*]e( 1)F+( '(Y+ n+(X(0Yb2&Y3/! )14(0Y)Ov(0) F!Y0Q!Y) I(03!.&555$=+F+m#H( .0!JH+ h(0( 1-,) 4&Y& e) #>+Y - F!m#F) QH555>)& c()NI ( ) 1P(0314+MN]e(0)O(0( !%#S!"#3U- F+ ( H#Y( 1(0(Qb#I(b#I(+Q+ “>)(0J(0 …H$=>)-ƒ !.#Y$=+‹(0+Q( J(0 (0#\t()Œ+[F+3L( bv!& c()N(=+Q) "+ “314+MN]e(0)O(0S!"#3U(= e. Cơ chế mở rộng UML và ngôn ngữ ràng buộc đốitượng C8+Q) "314+‡O>(0 p++Q) "314+MNH3‰!3"& _ 4&$2!>))‰+ n+ +e ) " H\ >) (01P! ]_(0 +e ) "5 R + , ‡ O>(0 C8 0U +Q - #I( •# iV)jOj)\&jl$=O=(0S#>+i(M)OH!()l5 R+ ,‡O>(0S‡!- #I(•#3L( (0 …H>)bv!& c()NI ( 2!]^H )Ot(>)& c()NI ( 3d)U()v!Y H\& '(( Q& c()NI ( 50I((0JC8 +Q+ nH>)M/b14(0b2(+F+- #I(•#314+3L( (0 …HM•($=+ h(0314+MN]e(03" MNH3‰!+F+& c()NI ( M•(+QY) H\+ $!.+& T!3L( (0 …H =()=(2!5R+ , (=\0!h&0(0!J)*( 3R(0!T(+GH(%()T(0(0I((0JC85 10 [...]... biểu diễn của chuyển tiếp đó PHẦN 3: 3.1 TỔNG QUAN VỀPHÂNTÍCHHƯỚNGĐỐITƯỢNG 3.1.1 Vai trò của pha phântích Trong các bước của vòng đời phát triển phần mềm nói chung, pha phântích (hay đặc tả) có các nhiệm vụ sau: - Thiết lập một cách nhìn tổng quan rõ ràng vềhệthống và các mục đích chính của hệthống cần xây dựng - Liệt kê các nhiệm vụ mà hệthống cần thực hiện - Phát triển một bộ từ vựng để... nào? - Hệthống cần phải tương tác với các hệthống nào khác? Cần phân biệt hệthống mà chúng cần phải xây dựng với các hệthống sẽ tương tác với nó Nghĩa là, cần xác định rõ biên giới giữa hệthống yêu cầu xây dựng với hệthống khác có thể bao gồm các hệthống máy tính cũng như các ứng dụng khác trong chính chiếc máy tính mà hệthống này sẽ hoạt động trong tương lai - Ai hay cái gì quan tâm đến kết quả... sẽ được trả lời trong pha thiết kế 3.1.2 Các bước phân tíchhướngđốitượngPhântíchhướngđốitượng được chia làm ba bước tương ứng với ba dạng mô hình UML là: • Mô hình use case: bước này nhằm xây dựng mô hình chức năng của sản phẩm phần mềm Các chức năng này được nhìn từ quan điểm của những người sử dụng hệthống Kết quả của bước này là một biểu đồ use case được phân cấp cùng các scenario tương... mối quan hệ trong biểu đồ lớp Giữa các lớp có các dạng quan hệ cơ bản như sau: - Quan hệ kết hợp (Association): Một kết hợp (association) là một sự nối kết giữa các lớp, cũng có nghĩa là sự nối kết giữa các đốitượng của các lớp này Trong UML, một quan hệ đượcấnc định nhằm mô tả một tập hợp các liên kết (links), tức là một sự liên quan về ngữ nghĩa (semantic connection) giữa một nhóm các đốitượng được... hệthống Điều này sẽ giúp cho nhóm phát triển và khách hàng có được sự thống nhất chung về các chức năng thực sự cần thiết của hệthống - Biểu đồ use case là cơ sở cho những bước tiếp theo của quá trình phân tíchthiếtkếhệthống phần mềm Dựa trên biểu đồ use case và các scenario, người phát triển hệthống sẽ chỉ ra các lớp cần thiết cũng như các thuộc tính của các lớp đó Các mục tiêu chính cần đạt... phát triển hệthống cần trả lời các câu hỏi sau: - Ai (hay hệthống nào) sẽ là người sử dụng những chức năng chính của hệ thống? (trả lời câu hỏi này ta sẽ tìm được các tác nhân chính) - Ai cần sự hỗ trợ của hệthống để thực hiện những công việc hàng ngày của họ? - Ai sẽ cần bảo trì, quản trị và đảm bảo cho hệthống hoạt động (tác nhân phụ)? - Hệthống sẽ phải xử lý và làm việc với những trang thiết bị... Biểu đồ lớp chỉ ra các lớp đốitượng trong hệ thống, các thuộc tính và phương 11 thức của từng lớp và các mối quan hệ giữa những lớp đó - Biểu đồ trạng thái tương ứng với mỗi lớp sẽ chỉ ra các trạng thái mà đốitượng của lớp đó có thể có và sự chuyển tiếp giữa những trạng thái đó - Các biểu đồ tương tác biểu diễn mối liên hệ giữa các đốitượng trong hệthống và giữa các đốitượng với các tác nhân bên... thông tin sách hợp lệ 4 Hệthống nhập thông tin sách mới vào CSDL 5 Hệthốngthông báo đã nhập thành công 6 Thủ thư thoát khỏi chức năng thêm sách Ngoại lệ: 3.a Hệthốngthông báo sách đã có trong CSDL 3.a.1 Hệthống hỏi thủ thư có thêm số lượng sách hay không 3.a.2 Thủ thư thêm số lượng sách 3.a.3 Hệthống thêm số lượng cho sách đã có 3.a.4 Hệthốngthông báo nhập thành công 3.b Hệthốngthông báo thông... đọc và tài liệu được mượn; thời gian bắt đầu mượn và thời hạn phải trả - Đối với người quản lý thư viện (thủ thư): được phép cập nhật các thông tin liên quan đến tài liệu và bạn đọc Bài toán này sẽ được sử dụng làm ví dụ trong quá trình thực hiện các bước phân tích và thiếtkếhệthống (Chương 3, 4) Tài liệu phân tíchthiếtkếhệthống sẽ được trình bày đầy đủ trong phần Phụ lục 3.2 MÔ HÌNH USE CASE... với các tác nhân bên ngoài Có hai loại biểu đồ tương tác: Biểu đồ tuần tự: Biểu diễn mối quan hệ giữa các đốitượng và giữa các đốitượng và tác nhân theo thứ tự thời gian Biểu đồ cộng tác: Biểu diễn mối quan hệ giữa các đốitượng và giữa các đốitượng và tác nhân nhưng nhấn mạnh đến vai trò của các đốitượng trong tương tác - Biểu đồ hoạt động biểu diễn các hoạt động và sự đồng bộ, chuyển tiếp các . 3p+ )O1(0 )O(0 & F))O!"(& c(% 12(03/!)14(0SH0U y Phân tích hướng đối tượng: [']^(0>)I ( + *( [F+3"I)T .) /(0 +c( [' ]^(0b=. =( & c(+GH I ( (= b= +F+ 3/! )14(0 0Œ( $2! .) /(0) ^+5 y Thiết kế hướng đối tượng: 8=0!H!3v()‰+ n++ 1R(0)O( ) =( +F+ )f& 4&3/!)14(0+>(0)F+Y. !)!,)5 y Lập trình và tích hợp: ^+ !.(ST() !,)-, 12(03/!)14(0S•(0+F+ MN]e(0+F+(0I((0Jbf&)O( 12(03/!)14(0iyyY{H$HYŽl Hướng đối tượng b=) #f)(0J) I(0]e(0