Add design patterns

This commit is contained in:
Cezary Adamczak 2022-01-12 10:57:02 +01:00
parent 05cc457bad
commit 8bc63c77cb
2 changed files with 430 additions and 85 deletions

View File

@ -2,23 +2,15 @@ format 224
classcanvas 128109 class_ref 171885 // Bankomat
classdiagramsettings member_max_width 0 end
xyz 122 279 2000
xyz 44 276 2000
end
classcanvas 128237 class_ref 172269 // Weryfikacja_Uzytkownika
classdiagramsettings member_max_width 0 end
xyz 126 124 2000
end
classcanvas 128493 class_ref 172141 // Sensory
classdiagramsettings member_max_width 0 end
xyz 397 330 2006
end
classcanvas 128877 class_ref 172013 // Banknoty
classdiagramsettings member_max_width 0 end
xyz 440 177 2000
xyz 55 122 2000
end
classcanvas 129133 class_ref 172397 // Karta
classdiagramsettings member_max_width 0 end
xyz 459 519 2000
xyz 458 519 2000
end
classcanvas 129389 class_ref 172525 // Bank
classdiagramsettings member_max_width 0 end
@ -30,76 +22,126 @@ classcanvas 129645 class_ref 172653 // Operator_Kart_Platniczych
end
classcanvas 129901 class_ref 172909 // Wyplata_Gotowki
classdiagramsettings member_max_width 0 end
xyz 20 560 2000
xyz 21 738 2000
end
classcanvas 130029 class_ref 172781 // Wplata_Gotowki
classdiagramsettings member_max_width 0 end
xyz 149 563 2000
xyz 142 738 2000
end
classcanvas 130157 class_ref 173037 // Sprawdzenie_Stanu_Konta
classdiagramsettings member_max_width 0 end
xyz 265 572 2006
xyz 255 739 2006
end
classcanvas 130285 class_ref 173165 // Potwierdzenie_Transakcji
classdiagramsettings member_max_width 0 end
xyz 60 704 2000
xyz 61 858 2000
end
classcanvas 131181 class_ref 179693 // IStrategiaTransakcje
classdiagramsettings hide_attributes no hide_operations no hide_getset_operations no show_members_full_definition yes show_members_visibility yes member_max_width 0 show_parameter_name yes end
xyz 67 564 2012
end
note 131949 "Dodany wzorzec Strategy"
xyzwh 229 572 2000 157 35
classcanvas 132205 class_ref 179821 // ISensoryAdapter
classdiagramsettings show_members_full_definition yes member_max_width 0 end
xyz 301 353 2000
end
note 132717 "Dodany wzorzec Adapter"
xyzwh 614 368 2000 153 35
classcanvas 132973 class_ref 180205 // SensoryEkranu
classdiagramsettings member_max_width 0 end
xyz 230 209 2012
end
classcanvas 133101 class_ref 180077 // SensorKieszenie
classdiagramsettings member_max_width 0 end
xyz 336 208 2011
end
classcanvas 133229 class_ref 179949 // SensorKarta
classdiagramsettings member_max_width 0 end
xyz 591 202 2005
end
note 133869 "... reszta sensorow ..."
xyzwh 450 217 2000 131 35
relationcanvas 128365 relation_ref 163949 // wywoluje
from ref 128109 z 2001 label "wywoluje" italic max_width 255 xyz 149.5 228 3000 to ref 128237
from ref 128109 z 2001 label "wywoluje" italic max_width 255 xyz 76 216.5 2001 to ref 128237
no_role_a no_role_b
multiplicity_a_pos 185 197 3000 multiplicity_b_pos 182 260 3000
end
relationcanvas 128749 relation_ref 164077 // ma
decenter_end 504
from ref 128109 z 2007 label "ma" italic max_width 255 xyz 328 373 3000 to ref 128493
no_role_a no_role_b
multiplicity_a_pos 382 394 3000 multiplicity_b_pos 284 395 3000
end
relationcanvas 129005 relation_ref 164205 // obsluguje
from ref 128493 z 2007 label "obsluguje" italic max_width 255 xyz 518 279 3000 to ref 128877
no_role_a no_role_b
multiplicity_a_pos 498 240 3000 multiplicity_b_pos 496 311 3000
multiplicity_a_pos 114 177 3000 multiplicity_b_pos 107 257 3000
end
relationcanvas 129261 relation_ref 164333 // obsluguje
from ref 128109 z 2001 label "obsluguje" italic max_width 255 xyz 359 462 3000 to ref 129133
from ref 128109 z 2001 label "obsluguje" italic max_width 255 xyz 319.5 451.5 2001 to ref 129133
no_role_a no_role_b
multiplicity_a_pos 430 541 3000 multiplicity_b_pos 284 441 3000
multiplicity_a_pos 429 538 3000 multiplicity_b_pos 206 421 3000
end
relationcanvas 129517 relation_ref 164461 // obsluguje
from ref 129389 z 2001 label "obsluguje" italic max_width 255 xyz 581 546 3000 to ref 129133
from ref 129389 z 2001 label "obsluguje" italic max_width 255 xyz 575.5 537 2001 to ref 129133
no_role_a no_role_b
multiplicity_a_pos 581 567 3000 multiplicity_b_pos 622 567 3000
multiplicity_a_pos 570 558 3000 multiplicity_b_pos 622 558 3000
end
relationcanvas 129773 relation_ref 164589 // obsluguje
from ref 129645 z 2001 label "obsluguje" italic max_width 255 xyz 518 622 3000 to ref 129133
from ref 129645 z 2001 label "obsluguje" italic max_width 255 xyz 514 613 2001 to ref 129133
no_role_a no_role_b
multiplicity_a_pos 488 608 3000 multiplicity_b_pos 498 636 3000
end
relationcanvas 130413 relation_ref 164717 // tworzy
from ref 128109 z 2001 label "tworzy" italic max_width 255 xyz 73 520 3000 to ref 129901
no_role_a no_role_b
multiplicity_a_pos 82 541 3000 multiplicity_b_pos 109 506 3000
end
relationcanvas 130541 relation_ref 164845 // tworzy
from ref 128109 z 2001 label "tworzy" italic max_width 255 xyz 162 526 3000 to ref 130029
no_role_a no_role_b
multiplicity_a_pos 184 544 3000 multiplicity_b_pos 182 506 3000
end
relationcanvas 130669 relation_ref 164973 // tworzy
from ref 128109 z 2007 label "tworzy" italic max_width 255 xyz 262 530 3000 to ref 130157
no_role_a no_role_b
multiplicity_a_pos 303 553 3000 multiplicity_b_pos 260 506 3000
multiplicity_a_pos 483 590 3000 multiplicity_b_pos 495 636 3000
end
relationcanvas 130925 relation_ref 165229 // tworzy
decenter_end 708
from ref 130029 z 2001 label "tworzy" italic max_width 255 xyz 145 661 3000 to ref 130285
decenter_begin 455
decenter_end 811
from ref 130029 z 2001 label "tworzy" italic max_width 255 xyz 145.5 816.5 2001 to ref 130285
no_role_a no_role_b
multiplicity_a_pos 158 685 3000 multiplicity_b_pos 170 636 3000
multiplicity_a_pos 158 839 3000 multiplicity_b_pos 171 793 3000
end
relationcanvas 131053 relation_ref 165357 // tworzy
decenter_end 178
from ref 129901 z 2001 label "tworzy" italic max_width 255 xyz 50 657 3000 to ref 130285
from ref 129901 z 2001 label "tworzy" italic max_width 255 xyz 47 814 2001 to ref 130285
no_role_a no_role_b
multiplicity_a_pos 63 685 3000 multiplicity_b_pos 75 633 3000
multiplicity_a_pos 60 839 3000 multiplicity_b_pos 72 793 3000
end
relationcanvas 131309 relation_ref 171885 // tworzy
from ref 128109 z 2013 label "tworzy" italic max_width 255 xyz 90 516 3000 to ref 131181
no_role_a no_role_b
multiplicity_a_pos 121 545 3000 multiplicity_b_pos 111 485 3000
end
relationcanvas 131565 relation_ref 172013 // <realization>
decenter_end 97
from ref 129901 z 2013 to ref 131181
no_role_a no_role_b
no_multiplicity_a no_multiplicity_b
end
relationcanvas 131693 relation_ref 172141 // <realization>
decenter_end 786
from ref 130029 z 2013 to ref 131181
no_role_a no_role_b
no_multiplicity_a no_multiplicity_b
end
relationcanvas 131821 relation_ref 172269 // <realization>
decenter_end 902
from ref 130157 z 2013 to ref 131181
no_role_a no_role_b
no_multiplicity_a no_multiplicity_b
end
relationcanvas 132461 relation_ref 172525 // komunikuje_sie
from ref 128109 z 2001 label "komunikuje_sie" italic max_width 255 xyz 205 365 3000 to ref 132205
no_role_a no_role_b
multiplicity_a_pos 284 388 3000 multiplicity_b_pos 206 385 3000
end
relationcanvas 133485 relation_ref 174317 // <realization>
decenter_end 141
from ref 132973 z 2013 to ref 132205
no_role_a no_role_b
no_multiplicity_a no_multiplicity_b
end
relationcanvas 133613 relation_ref 174445 // <realization>
from ref 133101 z 2012 to ref 132205
no_role_a no_role_b
no_multiplicity_a no_multiplicity_b
end
relationcanvas 133741 relation_ref 174573 // <realization>
decenter_end 961
from ref 133229 z 2006 to ref 132205
no_role_a no_role_b
no_multiplicity_a no_multiplicity_b
end
line 132077 -_-_
from ref 131949 z 2013 to ref 131181
line 132845 -_-_
from ref 132717 z 2001 to ref 132205
end

View File

@ -1,7 +1,7 @@
format 224
"models"
revision 22
modified_by 109 "legion"
revision 23
modified_by 109 "s452664"
@ -210,17 +210,29 @@ format 224
end
classrelation 168813 // (posiada>)
classrelation 168813 // posiada>
relation_ref 161133 // posiada>
end
classrelation 172397 // (dokonuje>)
classrelation 172397 // dokonuje>
relation_ref 162925 // dokonuje>
end
classrelation 173421 // (dokonuje>)
classrelation 173421 // dokonuje>
relation_ref 163437 // dokonuje>
end
classrelation 183149 // (posiada>)
relation_ref 172653 // posiada>
end
classrelation 183917 // (posiada>)
relation_ref 173165 // posiada>
end
classrelation 184685 // (posiada>)
relation_ref 173677 // posiada>
end
end
class 128237 "Karta"
@ -373,7 +385,7 @@ format 224
classrelation_ref 169965 // (<jest powiazane z)
end
classrelation 171117 // (<udostepnia)
classrelation 171117 // <udostepnia
relation_ref 162285 // <udostepnia
end
end
@ -715,7 +727,7 @@ format 224
end
classrelation 169837 // (<ma)
classrelation 169837 // <ma
relation_ref 161645 // <ma
end
end
@ -908,7 +920,7 @@ format 224
MysqlColumn
end
classrelation 170605 // (<dokonuje)
classrelation 170605 // <dokonuje
relation_ref 162029 // <dokonuje
end
end
@ -1187,15 +1199,15 @@ format 224
relation_ref 161901 // <association>
end
classrelation 172141 // (dziedziczy po>)
classrelation 172141 // dziedziczy po>
relation_ref 162797 // dziedziczy po>
end
classrelation 173165 // (dziedziczy po>)
classrelation 173165 // dziedziczy po>
relation_ref 163309 // dziedziczy po>
end
classrelation 173933 // (<dziedziczy po)
classrelation 173933 // <dziedziczy po
relation_ref 163693 // <dziedziczy po
end
@ -1703,7 +1715,7 @@ format 224
activitydiagramsettings
end
class 173165 "Potwierdzenie_Transakcji"
visibility package stereotype "Wynik Czynnosci Finansowej"
visibility package
cpp_decl ""
java_decl ""
php_decl ""
@ -1718,7 +1730,7 @@ format 224
end
class 173037 "Sprawdzenie_Stanu_Konta"
visibility package stereotype "Transakcja"
visibility package
cpp_decl ""
java_decl ""
php_decl ""
@ -1732,7 +1744,7 @@ format 224
a role_name "" multiplicity "1" private
classrelation_ref 173805 // (<dziedziczy po)
b role_name "" multiplicity "*" private
classrelation_ref 173933 // (<dziedziczy po)
classrelation_ref 173933 // <dziedziczy po
end
classrelation 175469 // <unidirectional association>
@ -1750,11 +1762,18 @@ format 224
end
classrelation 182637 // <realization>
relation 172269 -_-|>
a public
classrelation_ref 182637 // <realization>
b parent class_ref 179693 // IStrategiaTransakcje
end
end
class 172909 "Wyplata_Gotowki"
visibility package stereotype "Transakcja"
visibility package
cpp_decl ""
java_decl ""
php_decl ""
@ -1772,7 +1791,7 @@ format 224
a role_name "" multiplicity "1" private
classrelation_ref 173037 // (dziedziczy po>)
b role_name "" multiplicity "*" private
classrelation_ref 173165 // (dziedziczy po>)
classrelation_ref 173165 // dziedziczy po>
end
classrelation 173293 // (dokonuje>)
@ -1780,7 +1799,7 @@ format 224
a role_name "" multiplicity "1" private
classrelation_ref 173293 // (dokonuje>)
b role_name "" multiplicity "*" private
classrelation_ref 173421 // (dokonuje>)
classrelation_ref 173421 // dokonuje>
end
attribute 140653 "kwota:Waluta"
@ -1808,10 +1827,17 @@ format 224
classrelation_ref 175725 // (tworzy)
b multiplicity "1" parent class_ref 173165 // Potwierdzenie_Transakcji
end
classrelation 182381 // <realization>
relation 172013 -_-|>
a public
classrelation_ref 182381 // <realization>
b parent class_ref 179693 // IStrategiaTransakcje
end
end
class 172781 "Wplata_Gotowki"
visibility package stereotype "Transakcja"
visibility package
cpp_decl ""
java_decl ""
php_decl ""
@ -1829,7 +1855,7 @@ format 224
a role_name "" multiplicity "1" private
classrelation_ref 172013 // (dziedziczy po>)
b role_name "" multiplicity "*" private
classrelation_ref 172141 // (dziedziczy po>)
classrelation_ref 172141 // dziedziczy po>
end
classrelation 172269 // (dokonuje>)
@ -1837,7 +1863,7 @@ format 224
a role_name "" multiplicity "1" private
classrelation_ref 172269 // (dokonuje>)
b role_name "" multiplicity "*" private
classrelation_ref 172397 // (dokonuje>)
classrelation_ref 172397 // dokonuje>
end
attribute 140525 "kwota:Waluta"
@ -1865,10 +1891,17 @@ format 224
classrelation_ref 175597 // (tworzy)
b multiplicity "1" parent class_ref 173165 // Potwierdzenie_Transakcji
end
classrelation 182509 // <realization>
relation 172141 -_-|>
a public
classrelation_ref 182509 // <realization>
b parent class_ref 179693 // IStrategiaTransakcje
end
end
class 172653 "Operator_Kart_Platniczych"
visibility package stereotype "Organizacja"
visibility package
cpp_decl ""
java_decl ""
php_decl ""
@ -1912,7 +1945,7 @@ format 224
end
classrelation 171501 // (<ma)
classrelation 171501 // <ma
relation_ref 162541 // <ma
end
@ -1925,7 +1958,7 @@ format 224
end
class 172525 "Bank"
visibility package stereotype "Organizacja"
visibility package
cpp_decl ""
java_decl ""
php_decl ""
@ -1939,7 +1972,7 @@ format 224
a role_name "" multiplicity "1..*" private
classrelation_ref 170989 // (<udostepnia)
b role_name "" multiplicity "1" private
classrelation_ref 171117 // (<udostepnia)
classrelation_ref 171117 // <udostepnia
end
attribute 140269 "nazwa"
@ -1972,7 +2005,7 @@ format 224
end
class 172397 "Karta"
visibility package stereotype "Obiekt Fizyczny"
visibility package
cpp_decl ""
java_decl ""
php_decl ""
@ -1986,7 +2019,7 @@ format 224
a role_name "" multiplicity "1" private
classrelation_ref 169709 // (<ma)
b role_name "" multiplicity "1..*" private
classrelation_ref 169837 // (<ma)
classrelation_ref 169837 // <ma
end
classrelation 169965 // (<jest powiazane z)
@ -2006,7 +2039,7 @@ format 224
a role_name "" multiplicity "1" private
classrelation_ref 170477 // (<dokonuje)
b role_name "" multiplicity "1" private
classrelation_ref 170605 // (<dokonuje)
classrelation_ref 170605 // <dokonuje
end
attribute 140013 "pin"
@ -2044,12 +2077,12 @@ format 224
a role_name "" multiplicity "1" private
classrelation_ref 171629 // (<ma)
b role_name "" multiplicity "1..*" private
classrelation_ref 171501 // (<ma)
classrelation_ref 171501 // <ma
end
end
class 172269 "Weryfikacja_Uzytkownika"
visibility package stereotype "Zdarzenie"
visibility package
cpp_decl ""
java_decl ""
php_decl ""
@ -2097,7 +2130,7 @@ format 224
a role_name "" multiplicity "1" private
classrelation_ref 168685 // (posiada>)
b role_name "" multiplicity "1..*" private
classrelation_ref 168813 // (posiada>)
classrelation_ref 168813 // posiada>
end
operation 138349 "IsHardwareOk"
@ -2154,6 +2187,13 @@ format 224
classrelation_ref 174573 // (obsluguje)
b multiplicity "1" parent class_ref 172013 // Banknoty
end
classrelation 182765 // <realization>
relation 172397 -_-|>
a public
classrelation_ref 182765 // <realization>
b parent class_ref 179821 // ISensoryAdapter
end
end
sequencediagram 128507 "1-1-wlorzenieidentyfikatora"
@ -2170,7 +2210,7 @@ format 224
end
class 171885 "Bankomat"
visibility package stereotype "Obiekt Fizyczny"
visibility package
cpp_decl ""
java_decl ""
php_decl ""
@ -2363,6 +2403,32 @@ format 224
classrelation_ref 175341 // (tworzy)
b multiplicity "1" parent class_ref 173037 // Sprawdzenie_Stanu_Konta
end
classrelation 182253 // (tworzy)
relation 171885 ---> name "tworzy"
a role_name "" multiplicity "*" private
classrelation_ref 182253 // (tworzy)
b multiplicity "1" parent class_ref 179693 // IStrategiaTransakcje
end
classrelation 182893 // (komunikuje_sie)
relation 172525 ---> name "komunikuje_sie"
a role_name "" multiplicity "1" private
classrelation_ref 182893 // (komunikuje_sie)
b multiplicity "1" parent class_ref 179821 // ISensoryAdapter
end
classrelation 183405 // (posiada>)
relation_ref 172781 // posiada>
end
classrelation 184173 // (posiada>)
relation_ref 173293 // posiada>
end
classrelation 184941 // (posiada>)
relation_ref 173805 // posiada>
end
end
sequencediagram 128635 "1-2-autentykacja"
@ -2534,5 +2600,242 @@ format 224
classdiagramsettings draw_all_relations no member_max_width 0 end
size A4
end
class 179693 "IStrategiaTransakcje"
visibility package stereotype "interface."
cpp_decl ""
java_decl "${comment}${@}${visibility}${static}${final}${abstract}class ${name}${extends}${implements} {
${members}}
"
php_decl "${comment}${final}${abstract}class ${name}${extends}${implements} {
${members}}
"
python_2_2 python_decl ""
idl_decl "${comment}${abstract}${custom}valuetype ${name}${inherit} {
${members}};
"
explicit_switch_type ""
mysql_decl ""
attribute 147181 "TransactionType"
private explicit_type "enum"
cpp_decl ""
java_decl ""
php_decl ""
python_decl ""
idl_decl ""
mysql_decl ""
MysqlColumn
end
operation 145901 "Execute"
public explicit_return_type ""
nparams 1
param in name "b" type class_ref 171885 // Bankomat
end
end
class 179821 "ISensoryAdapter"
visibility package stereotype "interface."
cpp_decl ""
java_decl "${comment}${@}${visibility}${static}${final}${abstract}class ${name}${extends}${implements} {
${members}}
"
php_decl "${comment}${final}${abstract}class ${name}${extends}${implements} {
${members}}
"
python_2_2 python_decl ""
idl_decl "${comment}${abstract}${custom}valuetype ${name}${inherit} {
${members}};
"
explicit_switch_type ""
mysql_decl ""
operation 146029 "getHardwareState"
public explicit_return_type ""
nparams 1
param out name "hardwareState" explicit_type "hardwareState"
end
end
class 179949 "SensorKarta"
visibility package
cpp_decl ""
java_decl ""
php_decl ""
python_2_2 python_decl ""
idl_decl ""
explicit_switch_type ""
mysql_decl ""
classrelation 183021 // (posiada>)
relation 172653 ---- name "posiada>"
a role_name "" multiplicity "1" private
classrelation_ref 183021 // (posiada>)
b role_name "" multiplicity "1..*" private
classrelation_ref 183149 // (posiada>)
end
operation 146157 "IsHardwareOk"
public explicit_return_type ""
nparams 0
end
operation 146541 "AreCardToBePicked"
public explicit_return_type ""
nparams 0
end
classrelation 183277 // (posiada>)
relation 172781 ---- name "posiada>"
a role_name "" multiplicity "1" private
classrelation_ref 183277 // (posiada>)
b role_name "" multiplicity "1..*" private
classrelation_ref 183405 // (posiada>)
end
classrelation 183533 // (obsluguje)
relation 172909 ---> name "obsluguje"
a role_name "" multiplicity "*" private
classrelation_ref 183533 // (obsluguje)
b multiplicity "1" parent class_ref 172013 // Banknoty
end
classrelation 185709 // <realization>
relation 174573 -_-|>
a public
classrelation_ref 185709 // <realization>
b parent class_ref 179821 // ISensoryAdapter
end
end
class 180077 "SensorKieszenie"
visibility package
cpp_decl ""
java_decl ""
php_decl ""
python_2_2 python_decl ""
idl_decl ""
explicit_switch_type ""
mysql_decl ""
classrelation 183789 // (posiada>)
relation 173165 ---- name "posiada>"
a role_name "" multiplicity "1" private
classrelation_ref 183789 // (posiada>)
b role_name "" multiplicity "1..*" private
classrelation_ref 183917 // (posiada>)
end
operation 146669 "IsHardwareOk"
public explicit_return_type ""
nparams 0
end
classrelation 184045 // (posiada>)
relation 173293 ---- name "posiada>"
a role_name "" multiplicity "1" private
classrelation_ref 184045 // (posiada>)
b role_name "" multiplicity "1..*" private
classrelation_ref 184173 // (posiada>)
end
classrelation 184301 // (obsluguje)
relation 173421 ---> name "obsluguje"
a role_name "" multiplicity "*" private
classrelation_ref 184301 // (obsluguje)
b multiplicity "1" parent class_ref 172013 // Banknoty
end
classrelation 185581 // <realization>
relation 174445 -_-|>
a public
classrelation_ref 185581 // <realization>
b parent class_ref 179821 // ISensoryAdapter
end
end
class 180205 "SensoryEkranu"
visibility package
cpp_decl ""
java_decl ""
php_decl ""
python_2_2 python_decl ""
idl_decl ""
explicit_switch_type ""
mysql_decl ""
classrelation 184557 // (posiada>)
relation 173677 ---- name "posiada>"
a role_name "" multiplicity "1" private
classrelation_ref 184557 // (posiada>)
b role_name "" multiplicity "1..*" private
classrelation_ref 184685 // (posiada>)
end
operation 147181 "IsHardwareOk"
public explicit_return_type ""
nparams 0
end
classrelation 184813 // (posiada>)
relation 173805 ---- name "posiada>"
a role_name "" multiplicity "1" private
classrelation_ref 184813 // (posiada>)
b role_name "" multiplicity "1..*" private
classrelation_ref 184941 // (posiada>)
end
classrelation 185069 // (obsluguje)
relation 173933 ---> name "obsluguje"
a role_name "" multiplicity "*" private
classrelation_ref 185069 // (obsluguje)
b multiplicity "1" parent class_ref 172013 // Banknoty
end
classrelation 185325 // <dependency>
relation 174189 -_->
a public
classrelation_ref 185325 // <dependency>
b parent class_ref 179821 // ISensoryAdapter
end
classrelation 185453 // <realization>
relation 174317 -_-|>
a public
classrelation_ref 185453 // <realization>
b parent class_ref 179821 // ISensoryAdapter
end
end
end
end