Merge git.wmi.amu.edu.pl:s444417/Automat_spozywczy
This commit is contained in:
commit
bee4d2b03b
66
models/128013.diagram
Normal file
66
models/128013.diagram
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
format 223
|
||||||
|
|
||||||
|
classinstancecanvas 128269 classinstance_ref 128013 // Zaopatrzeniowiec
|
||||||
|
xyz 12.6 16.6 2005 life_line_z 2000
|
||||||
|
end
|
||||||
|
classinstancecanvas 128397 classinstance_ref 128514 // KontrolerAutomatu
|
||||||
|
xyz 631.3 30.3 2005 life_line_z 2000
|
||||||
|
end
|
||||||
|
classinstancecanvas 128909 classinstance_ref 128141 // Ekran_dotykowy
|
||||||
|
xyz 322.8 28.7 2005 life_line_z 2000
|
||||||
|
end
|
||||||
|
classinstancecanvas 131725 classinstance_ref 128269 // Automat
|
||||||
|
xyz 920 25 2005 life_line_z 2000
|
||||||
|
end
|
||||||
|
durationcanvas 129421 classinstance_ref 128269 // Zaopatrzeniowiec:Zaopatrzeniowiec
|
||||||
|
xyzwh 124 117 2010 11 80
|
||||||
|
end
|
||||||
|
durationcanvas 129549 classinstance_ref 128909 // Ekran_dotykowy:Ekran_dotykowy
|
||||||
|
xyzwh 430 118 2010 11 40
|
||||||
|
end
|
||||||
|
durationcanvas 129805 classinstance_ref 128269 // Zaopatrzeniowiec:Zaopatrzeniowiec
|
||||||
|
xyzwh 124 219 2010 11 66
|
||||||
|
end
|
||||||
|
durationcanvas 129933 classinstance_ref 128909 // Ekran_dotykowy:Ekran_dotykowy
|
||||||
|
xyzwh 430 216 2010 11 112
|
||||||
|
overlappingdurationcanvas 131469
|
||||||
|
xyzwh 436 275 2020 11 35
|
||||||
|
end
|
||||||
|
end
|
||||||
|
durationcanvas 130189 classinstance_ref 128397 // KontrolerAutomatu:Automat
|
||||||
|
xyzwh 721 214 2010 11 96
|
||||||
|
end
|
||||||
|
durationcanvas 131853 classinstance_ref 131725 // Automat:Automat
|
||||||
|
xyzwh 976 251 2010 11 37
|
||||||
|
end
|
||||||
|
msg 129677 synchronous
|
||||||
|
from durationcanvas_ref 129421
|
||||||
|
to durationcanvas_ref 129549
|
||||||
|
yz 118 2015 explicitmsg "dodajProdukty()"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
label_xy 230 101
|
||||||
|
msg 130061 synchronous
|
||||||
|
from durationcanvas_ref 129805
|
||||||
|
to durationcanvas_ref 129933
|
||||||
|
yz 220 2015 explicitmsg "logowanie(haslo: String)"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
label_xy 203 203
|
||||||
|
msg 130317 synchronous
|
||||||
|
from durationcanvas_ref 129933
|
||||||
|
to durationcanvas_ref 130189
|
||||||
|
yz 218 2015 explicitmsg "sprawdzHaslo(haslo: String)"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
label_xy 485 201
|
||||||
|
msg 131597 synchronous
|
||||||
|
from durationcanvas_ref 130189
|
||||||
|
to durationcanvas_ref 131469
|
||||||
|
yz 299 2025 explicitmsg "logowanie(status: Boolean)"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
label_xy 492 282
|
||||||
|
msg 131981 synchronous
|
||||||
|
from durationcanvas_ref 130189
|
||||||
|
to durationcanvas_ref 131853
|
||||||
|
yz 264 2015 explicitmsg "gotowoscOtrzymaniaTowarow()"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
label_xy 748 247
|
||||||
|
end
|
327
models/128014.diagram
Normal file
327
models/128014.diagram
Normal file
@ -0,0 +1,327 @@
|
|||||||
|
format 223
|
||||||
|
|
||||||
|
classcanvas 128002 class_ref 128002 // Karta_platnicza
|
||||||
|
classdiagramsettings member_max_width 0 end
|
||||||
|
xyz 958.37 1057.87 2000
|
||||||
|
end
|
||||||
|
classcanvas 128142 class_ref 128142 // Klient
|
||||||
|
classdiagramsettings member_max_width 0 end
|
||||||
|
xyz 799.49 572.57 2000
|
||||||
|
end
|
||||||
|
classcanvas 128270 class_ref 128270 // Produkt_gotowy
|
||||||
|
classdiagramsettings member_max_width 0 end
|
||||||
|
xyz 1452.43 1536.52 2000
|
||||||
|
end
|
||||||
|
classcanvas 128398 class_ref 128398 // Produky_do_przygotowania
|
||||||
|
classdiagramsettings member_max_width 0 end
|
||||||
|
xyz 1712.76 1311.75 2000
|
||||||
|
end
|
||||||
|
classcanvas 128514 class_ref 128514 // Kasetka
|
||||||
|
classdiagramsettings member_max_width 0 end
|
||||||
|
xyz 416.1 449.56 2000
|
||||||
|
end
|
||||||
|
classcanvas 128526 class_ref 128526 // Sprzedaz
|
||||||
|
classdiagramsettings member_max_width 0 end
|
||||||
|
xyzwh 1193.94 569.16 2000 221 57
|
||||||
|
end
|
||||||
|
classcanvas 128654 class_ref 128654 // Terminal
|
||||||
|
classdiagramsettings member_max_width 0 end
|
||||||
|
xyz 985.84 864.55 2000
|
||||||
|
end
|
||||||
|
classcanvas 128770 class_ref 128770 // Produkt
|
||||||
|
classdiagramsettings member_max_width 0 end
|
||||||
|
xyzwh 1456.25 1220.94 2000 146 125
|
||||||
|
end
|
||||||
|
classcanvas 128898 class_ref 128898 // Dzial_serwisowy
|
||||||
|
classdiagramsettings member_max_width 0 end
|
||||||
|
xyz 1440.6 185.84 2000
|
||||||
|
end
|
||||||
|
classcanvas 129026 class_ref 129026 // Monety_klienta
|
||||||
|
classdiagramsettings member_max_width 0 end
|
||||||
|
xyz 819.19 773.75 2000
|
||||||
|
end
|
||||||
|
classcanvas 129038 class_ref 129038 // Zaopatrzeniowiec
|
||||||
|
classdiagramsettings member_max_width 0 end
|
||||||
|
xyz 427.04 1242.63 2000
|
||||||
|
end
|
||||||
|
classcanvas 129166 class_ref 129166 // Serwisant
|
||||||
|
classdiagramsettings member_max_width 0 end
|
||||||
|
xyz 1462.34 317.3 2000
|
||||||
|
end
|
||||||
|
classcanvas 129282 class_ref 129282 // Alarm
|
||||||
|
classdiagramsettings member_max_width 0 end
|
||||||
|
xyz 1891.59 608.86 2000
|
||||||
|
end
|
||||||
|
classcanvas 129294 class_ref 129294 // Dzial_zaopatrzeniowy
|
||||||
|
classdiagramsettings member_max_width 0 end
|
||||||
|
xyz 786.35 1173.42 2000
|
||||||
|
end
|
||||||
|
classcanvas 129410 class_ref 129410 // Proba_wlamanie
|
||||||
|
classdiagramsettings member_max_width 0 end
|
||||||
|
xyz 1580.02 786.45 2000
|
||||||
|
end
|
||||||
|
classcanvas 129550 class_ref 129550 // Saldo_klienta
|
||||||
|
classdiagramsettings member_max_width 0 end
|
||||||
|
xyz 678.16 905.3 2005
|
||||||
|
end
|
||||||
|
classcanvas 129666 class_ref 129666 // Awaria
|
||||||
|
classdiagramsettings member_max_width 0 end
|
||||||
|
xyz 1816.19 454.44 2000
|
||||||
|
end
|
||||||
|
classcanvas 129678 class_ref 129678 // Raport_statu_magazynowego
|
||||||
|
classdiagramsettings member_max_width 0 end
|
||||||
|
xyz 1157.1 1169.66 2000
|
||||||
|
end
|
||||||
|
classcanvas 130050 class_ref 130050 // Procedura_przygotowania_produktu
|
||||||
|
classdiagramsettings member_max_width 0 end
|
||||||
|
xyz 2041.92 1306.15 2000
|
||||||
|
end
|
||||||
|
classcanvas 130178 class_ref 136578 // Raport_o_awarii
|
||||||
|
classdiagramsettings member_max_width 0 end
|
||||||
|
xyz 1727.98 179.31 2000
|
||||||
|
end
|
||||||
|
classcanvas 130562 class_ref 136962 // Raport_sprzedazy
|
||||||
|
classdiagramsettings member_max_width 0 end
|
||||||
|
xyz 1056.64 294.84 2000
|
||||||
|
end
|
||||||
|
classcanvas 130690 class_ref 137090 // Czujnik_wlamaniowy
|
||||||
|
classdiagramsettings member_max_width 0 end
|
||||||
|
xyz 1563.69 611.38 2000
|
||||||
|
end
|
||||||
|
classcanvas 131586 class_ref 144002 // Platnosc
|
||||||
|
classdiagramsettings member_max_width 0 end
|
||||||
|
xyz 976.98 659.62 2000
|
||||||
|
end
|
||||||
|
classcanvas 135298 class_ref 128014 // Automat
|
||||||
|
classdiagramsettings member_max_width 0 end
|
||||||
|
xyzwh 1417.12 441.58 2000 175 77
|
||||||
|
end
|
||||||
|
classcanvas 139394 class_ref 144130 // Gotowka_automatu
|
||||||
|
classdiagramsettings member_max_width 0 end
|
||||||
|
xyz 640.38 456 2000
|
||||||
|
end
|
||||||
|
classcanvas 140290 class_ref 144258 // Blad_wprowadzania_gotowki
|
||||||
|
classdiagramsettings member_max_width 0 end
|
||||||
|
xyz 556.14 1085.55 2000
|
||||||
|
end
|
||||||
|
classcanvas 148354 class_ref 129422 // Zwrot_monet
|
||||||
|
classdiagramsettings member_max_width 0 end
|
||||||
|
xyz 824.6 994.13 2000
|
||||||
|
end
|
||||||
|
classcanvas 149378 class_ref 150786 // Nominal
|
||||||
|
classdiagramsettings member_max_width 0 end
|
||||||
|
xyz 806.88 371.62 2000
|
||||||
|
end
|
||||||
|
relationcanvas 132866 relation_ref 129026 // Wplacanie
|
||||||
|
decenter_begin 349
|
||||||
|
decenter_end 699
|
||||||
|
from ref 129026 z 2006 label "Wplacanie" italic max_width 255 xyz 756 857 2006 to ref 129550
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 751 879 3000 multiplicity_b_pos 821 827 3000
|
||||||
|
end
|
||||||
|
relationcanvas 133250 relation_ref 129410 // Skanuje
|
||||||
|
decenter_begin 430
|
||||||
|
from ref 128654 z 2001 label "Skanuje" italic max_width 255 xyz 983 971 2001 to ref 128002
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 993 1032 3000 multiplicity_b_pos 991 916 3000
|
||||||
|
end
|
||||||
|
relationcanvas 133890 relation_ref 129666 // Podlega
|
||||||
|
decenter_begin 531
|
||||||
|
decenter_end 485
|
||||||
|
from ref 128398 z 2001 label "Podlega" italic max_width 255 xyz 1967 1318 2001 to ref 130050
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 2015 1342 3000 multiplicity_b_pos 1934 1343 3000
|
||||||
|
end
|
||||||
|
relationcanvas 134914 relation_ref 130562 // Jest_realizowana
|
||||||
|
from ref 129026 z 2001 label "Jest_realizowana" italic max_width 255 xyz 833 721 2001 to ref 131586
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 951 713 3000 multiplicity_b_pos 921 771 3000
|
||||||
|
end
|
||||||
|
relationcanvas 135042 relation_ref 130690 // Jest_realizowana
|
||||||
|
decenter_end 423
|
||||||
|
from ref 131586 z 2001 label "Jest_realizowana" italic max_width 255 xyz 960 770 2001 to ref 128654
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 991 839 3000 multiplicity_b_pos 988 724 3000
|
||||||
|
end
|
||||||
|
relationcanvas 136066 relation_ref 131074 // <Zawiera
|
||||||
|
from ref 131586 z 2001 label "<Zawiera" italic max_width 255 xyz 1078 626 2001 to ref 128526
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 1182 629 3000 multiplicity_b_pos 1063 680 3000
|
||||||
|
end
|
||||||
|
relationcanvas 136194 relation_ref 131202 // Dokonuje
|
||||||
|
decenter_begin 441
|
||||||
|
decenter_end 535
|
||||||
|
from ref 135298 z 2001 label "Dokonuje" italic max_width 255 xyz 1370 535 2001 to ref 128526
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 1323 543 3000 multiplicity_b_pos 1471 523 3000
|
||||||
|
end
|
||||||
|
relationcanvas 136322 relation_ref 131330 // Dokonuje
|
||||||
|
from ref 128142 z 2001 label "Dokonuje" italic max_width 255 xyz 883 627 2001 to ref 131586
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 957 683 3000 multiplicity_b_pos 859 632 3000
|
||||||
|
end
|
||||||
|
relationcanvas 136450 relation_ref 131458 // Uczestniczy>
|
||||||
|
from ref 128526 z 2001 label "Uczestniczy>" italic max_width 255 xyz 976 579 2001 to ref 128142
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 859 617 3000 multiplicity_b_pos 1174 607 3000
|
||||||
|
end
|
||||||
|
relationcanvas 136962 relation_ref 131714 // Otrzymuje
|
||||||
|
decenter_end 546
|
||||||
|
from ref 129678 z 2001 label "Otrzymuje" italic max_width 255 xyz 1023 1174 2001 to ref 129294
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 966 1205 3000 multiplicity_b_pos 1129 1205 3000
|
||||||
|
end
|
||||||
|
relationcanvas 137346 relation_ref 132098 // <Generuje
|
||||||
|
from ref 135298 z 2001 label "<Generuje" italic max_width 255 xyz 1294 385 2001 to ref 130562
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 1259 383 3000 multiplicity_b_pos 1394 457 3000
|
||||||
|
end
|
||||||
|
relationcanvas 138498 relation_ref 132738 // Jest
|
||||||
|
decenter_begin 901
|
||||||
|
decenter_end 523
|
||||||
|
from ref 128770 z 2001 label "Jest" italic max_width 255 xyz 1658 1311 2001 to ref 128398
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 1671 1343 3000 multiplicity_b_pos 1615 1341 3000
|
||||||
|
end
|
||||||
|
relationcanvas 138626 relation_ref 132866 // Jest
|
||||||
|
decenter_end 555
|
||||||
|
from ref 128770 z 2001 label "Jest" italic max_width 255 xyz 1509 1420 2001 to ref 128270
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 1484 1511 3000 multiplicity_b_pos 1500 1352 3000
|
||||||
|
end
|
||||||
|
relationcanvas 138754 relation_ref 132994 // Dodaje
|
||||||
|
from ref 128770 z 2001 label "Dodaje" italic max_width 255 xyz 980.5 1267 2001 to ref 129038
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 580 1297 3000 multiplicity_b_pos 1415 1290 3000
|
||||||
|
end
|
||||||
|
relationcanvas 138882 relation_ref 133122 // Ma
|
||||||
|
decenter_begin 483
|
||||||
|
decenter_end 578
|
||||||
|
from ref 128770 z 2001 label "Ma" italic max_width 255 xyz 1509 848 2001 to ref 135298
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 1494 526 3000 multiplicity_b_pos 1487 1193 3000
|
||||||
|
end
|
||||||
|
relationcanvas 139522 relation_ref 133506 // <Posiada
|
||||||
|
from ref 135298 z 2001 label "<Posiada" italic max_width 255 xyz 1069 466 2001 to ref 139394
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 803 492 3000 multiplicity_b_pos 1393 489 3000
|
||||||
|
end
|
||||||
|
relationcanvas 139650 relation_ref 133634 // <Laduje
|
||||||
|
from ref 139394 z 2001 label "<Laduje" italic max_width 255 xyz 579 466 2001 to ref 128514
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 591 493 3000 multiplicity_b_pos 599 493 3000
|
||||||
|
end
|
||||||
|
relationcanvas 140930 relation_ref 134274 // Ma
|
||||||
|
decenter_end 578
|
||||||
|
from ref 129666 z 2001 label "Ma" italic max_width 255 xyz 1689 463 2001 to ref 135298
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 1606 495 3000 multiplicity_b_pos 1775 491 3000
|
||||||
|
end
|
||||||
|
relationcanvas 141186 relation_ref 134402 // <Wywoluje
|
||||||
|
decenter_end 558
|
||||||
|
from ref 130178 z 2001 to point 1790.6 396.4
|
||||||
|
line 149122 z 2001 label "<Wywoluje" italic max_width 255 xyz 1796 377 2001 to point 1870.6 397.2
|
||||||
|
line 148994 z 2001 to ref 129666
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 1848 430 3000 multiplicity_b_pos 1766 242 3000
|
||||||
|
end
|
||||||
|
relationcanvas 141314 relation_ref 134530 // Otrzymuje
|
||||||
|
from ref 128898 z 2001 label "Otrzymuje" italic max_width 255 xyz 1614 186 2001 to ref 130178
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 1686 216 3000 multiplicity_b_pos 1587 216 3000
|
||||||
|
end
|
||||||
|
relationcanvas 141442 relation_ref 134658 // Wysyla
|
||||||
|
decenter_end 490
|
||||||
|
from ref 128898 z 2001 label "Wysyla" italic max_width 255 xyz 1473 264 2001 to ref 129166
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 1464 292 3000 multiplicity_b_pos 1479 236 3000
|
||||||
|
end
|
||||||
|
relationcanvas 141570 relation_ref 134786 // Naprawia
|
||||||
|
decenter_begin 507
|
||||||
|
from ref 129166 z 2001 label "Naprawia" italic max_width 255 xyz 1470 392 2001 to ref 135298
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 1479 417 3000 multiplicity_b_pos 1465 368 3000
|
||||||
|
end
|
||||||
|
relationcanvas 141954 relation_ref 134914 // Posiada
|
||||||
|
from ref 135298 z 2001 label "Posiada" italic max_width 255 xyz 1549 545 2001 to ref 130690
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 1575 586 3000 multiplicity_b_pos 1521 526 3000
|
||||||
|
end
|
||||||
|
relationcanvas 142082 relation_ref 135042 // Aktywuje^
|
||||||
|
decenter_end 504
|
||||||
|
from ref 130690 z 2001 label "Aktywuje^" italic max_width 255 xyz 1608 699 2001 to ref 129410
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 1619 760 3000 multiplicity_b_pos 1603 663 3000
|
||||||
|
end
|
||||||
|
relationcanvas 142978 relation_ref 135426 // Dodawanie^
|
||||||
|
decenter_end 333
|
||||||
|
from ref 139394 z 2006 label "Dodawanie^" italic max_width 255 xyz 674 691 2006 to ref 129550
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 688 880 3000 multiplicity_b_pos 690 520 3000
|
||||||
|
end
|
||||||
|
relationcanvas 143362 relation_ref 135554 // Dotyczy
|
||||||
|
decenter_begin 231
|
||||||
|
decenter_end 958
|
||||||
|
from ref 128770 z 2001 label "Dotyczy" italic max_width 255 xyz 1421 901 2001 to ref 128526
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 1381 633 3000 multiplicity_b_pos 1465 1193 3000
|
||||||
|
end
|
||||||
|
relationcanvas 143618 relation_ref 135682 // <Wysyla
|
||||||
|
decenter_end 52
|
||||||
|
from ref 129038 z 2001 label "<Wysyla" italic max_width 255 xyz 644.5 1200 2001 to ref 129294
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 764 1220 3000 multiplicity_b_pos 580 1274 3000
|
||||||
|
end
|
||||||
|
relationcanvas 143746 relation_ref 135810 // Oproznia^
|
||||||
|
decenter_end 495
|
||||||
|
from ref 128514 z 2001 label "Oproznia^" italic max_width 255 xyz 459.5 862 2001 to ref 129038
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 469 1217 3000 multiplicity_b_pos 469 534 3000
|
||||||
|
end
|
||||||
|
relationcanvas 145282 relation_ref 136066 // Generuje
|
||||||
|
decenter_end 331
|
||||||
|
from ref 129678 z 2001 label "Generuje" italic max_width 255 xyz 1234 877 2001 to ref 128526
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 1243 633 3000 multiplicity_b_pos 1226 1145 3000
|
||||||
|
end
|
||||||
|
relationcanvas 146562 relation_ref 136194 // Aktywuje
|
||||||
|
from ref 130690 z 2001 label "Aktywuje" italic max_width 255 xyz 1776 613 2001 to ref 129282
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 1865 638 3000 multiplicity_b_pos 1739 639 3000
|
||||||
|
end
|
||||||
|
relationcanvas 147074 relation_ref 136450 // Otrzymuje
|
||||||
|
decenter_begin 685
|
||||||
|
from ref 130562 z 2001 label "Otrzymuje" italic max_width 255 xyz 332 867 2001 to point 373 345.6
|
||||||
|
line 147202 z 2001 to point 369.8 1351.4
|
||||||
|
line 147458 z 2001 to point 861.4 1355.6
|
||||||
|
line 147330 z 2001 to ref 129294
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 843 1224 3000 multiplicity_b_pos 1025 354 3000
|
||||||
|
end
|
||||||
|
relationcanvas 148482 relation_ref 143618 // Wywoluje
|
||||||
|
from ref 140290 z 2001 label "Wywoluje" italic max_width 255 xyz 735 1041 2001 to ref 148354
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 797 1039 3000 multiplicity_b_pos 723 1088 3000
|
||||||
|
end
|
||||||
|
relationcanvas 148610 relation_ref 143746 // Oddaje
|
||||||
|
decenter_begin 527
|
||||||
|
from ref 148354 z 2001 label "Oddaje" italic max_width 255 xyz 852 892 2001 to ref 129026
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 840 838 3000 multiplicity_b_pos 854 968 3000
|
||||||
|
end
|
||||||
|
relationcanvas 150018 relation_ref 156802 // Dotyczy
|
||||||
|
from ref 129678 z 2001 label "Dotyczy" italic max_width 255 xyz 1375 1241 2001 to ref 128770
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 1416 1268 3000 multiplicity_b_pos 1368 1238 3000
|
||||||
|
end
|
||||||
|
relationcanvas 150274 relation_ref 156930 // Dotyczy
|
||||||
|
decenter_begin 136
|
||||||
|
decenter_end 800
|
||||||
|
from ref 130562 z 2001 label "Dotyczy" italic max_width 255 xyz 243 867 2001 to point 273 308
|
||||||
|
line 150402 z 2001 to point 270.6 1419.8
|
||||||
|
line 150530 z 2001 to point 859.8 1420.6
|
||||||
|
line 151170 z 2001 to ref 128770
|
||||||
|
no_role_a no_role_b
|
||||||
|
multiplicity_a_pos 1416 1327 3000 multiplicity_b_pos 1011 313 3000
|
||||||
|
end
|
||||||
|
end
|
66
models/128141.diagram
Normal file
66
models/128141.diagram
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
format 223
|
||||||
|
|
||||||
|
classinstancecanvas 128013 classinstance_ref 128013 // Zaopatrzeniowiec
|
||||||
|
xyz 19 15 2005 life_line_z 2000
|
||||||
|
end
|
||||||
|
classinstancecanvas 128141 classinstance_ref 128269 // Automat
|
||||||
|
xyz 356 29 2005 life_line_z 2000
|
||||||
|
end
|
||||||
|
classinstancecanvas 128269 classinstance_ref 128514 // KontrolerAutomatu
|
||||||
|
xyz 580 28 2005 life_line_z 2000
|
||||||
|
end
|
||||||
|
classinstancecanvas 129421 classinstance_ref 128397 // Dzial_zaopatrzeniowy
|
||||||
|
xyz 829 28 2010 life_line_z 2000
|
||||||
|
end
|
||||||
|
durationcanvas 128397 classinstance_ref 128013 // Zaopatrzeniowiec:Zaopatrzeniowiec
|
||||||
|
xyzwh 131 109 2010 11 91
|
||||||
|
end
|
||||||
|
durationcanvas 128525 classinstance_ref 128141 // Automat:Automat
|
||||||
|
xyzwh 412 109 2010 11 59
|
||||||
|
end
|
||||||
|
durationcanvas 128781 classinstance_ref 128013 // Zaopatrzeniowiec:Zaopatrzeniowiec
|
||||||
|
xyzwh 131 213 2010 11 88
|
||||||
|
end
|
||||||
|
durationcanvas 128909 classinstance_ref 128141 // Automat:Automat
|
||||||
|
xyzwh 412 214 2010 11 106
|
||||||
|
overlappingdurationcanvas 129805
|
||||||
|
xyzwh 418 289 2020 11 25
|
||||||
|
end
|
||||||
|
end
|
||||||
|
durationcanvas 129165 classinstance_ref 128269 // KontrolerAutomatu:Automat
|
||||||
|
xyzwh 670 232 2010 11 76
|
||||||
|
end
|
||||||
|
durationcanvas 129549 classinstance_ref 129421 // Dzial_zaopatrzeniowy:Dzial_zaopatrzeniowy
|
||||||
|
xyzwh 974 246 2010 11 49
|
||||||
|
end
|
||||||
|
msg 128653 synchronous
|
||||||
|
from durationcanvas_ref 128397
|
||||||
|
to durationcanvas_ref 128525
|
||||||
|
yz 109 2015 explicitmsg "dodajProdukty(produkt: Produkt)"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
label_xy 188 92
|
||||||
|
msg 129037 synchronous
|
||||||
|
from durationcanvas_ref 128781
|
||||||
|
to durationcanvas_ref 128909
|
||||||
|
yz 214 2015 explicitmsg "uzupelnionoTowar()"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
label_xy 228 197
|
||||||
|
msg 129293 synchronous
|
||||||
|
from durationcanvas_ref 128909
|
||||||
|
to durationcanvas_ref 129165
|
||||||
|
yz 233 2015 explicitmsg "sprawdzProdukty()"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
label_xy 508 216
|
||||||
|
msg 129677 synchronous
|
||||||
|
from durationcanvas_ref 129165
|
||||||
|
to durationcanvas_ref 129549
|
||||||
|
yz 266 2020 explicitmsg "wyslijRaport(raport: Raport)"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
label_xy 738 249
|
||||||
|
msg 129933 synchronous
|
||||||
|
from durationcanvas_ref 129165
|
||||||
|
to durationcanvas_ref 129805
|
||||||
|
yz 289 2025 explicitmsg "gotowoscDoZamkniecia()"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
label_xy 466 272
|
||||||
|
end
|
42
models/128269.diagram
Normal file
42
models/128269.diagram
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
format 223
|
||||||
|
|
||||||
|
classinstancecanvas 128013 classinstance_ref 128013 // Zaopatrzeniowiec
|
||||||
|
xyz 18 16 2005 life_line_z 2000
|
||||||
|
end
|
||||||
|
classinstancecanvas 128141 classinstance_ref 128269 // Automat
|
||||||
|
xyz 322 28 2005 life_line_z 2000
|
||||||
|
end
|
||||||
|
classinstancecanvas 129037 classinstance_ref 128514 // KontrolerAutomatu
|
||||||
|
xyz 536 27 2005 life_line_z 2000
|
||||||
|
end
|
||||||
|
durationcanvas 128269 classinstance_ref 128013 // Zaopatrzeniowiec:Zaopatrzeniowiec
|
||||||
|
xyzwh 130 113 2010 11 76
|
||||||
|
end
|
||||||
|
durationcanvas 128397 classinstance_ref 128141 // Automat:Automat
|
||||||
|
xyzwh 378 118 2010 11 147
|
||||||
|
overlappingdurationcanvas 129421
|
||||||
|
xyzwh 384 213 2020 11 42
|
||||||
|
end
|
||||||
|
end
|
||||||
|
durationcanvas 129165 classinstance_ref 129037 // KontrolerAutomatu:Automat
|
||||||
|
xyzwh 626 148 2010 11 100
|
||||||
|
end
|
||||||
|
msg 128525 synchronous
|
||||||
|
from durationcanvas_ref 128269
|
||||||
|
to durationcanvas_ref 128397
|
||||||
|
yz 118 2015 explicitmsg "zamknijAutomat()"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
label_xy 203 101
|
||||||
|
msg 129293 synchronous
|
||||||
|
from durationcanvas_ref 128397
|
||||||
|
to durationcanvas_ref 129165
|
||||||
|
yz 153 2015 explicitmsg "poprawnoscZamkniecia()"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
label_xy 423 136
|
||||||
|
msg 129549 synchronous
|
||||||
|
from durationcanvas_ref 129165
|
||||||
|
to durationcanvas_ref 129421
|
||||||
|
yz 231 2025 explicitmsg "gotowoscNaZamowienie()"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
label_xy 426 214
|
||||||
|
end
|
12
models/13.session
Normal file
12
models/13.session
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
window_sizes 1920 1017 278 1637 860 104
|
||||||
|
|
||||||
|
diagrams
|
||||||
|
active classdiagram_ref 128014 // domain-model
|
||||||
|
1624 1177 90 A2 0 0
|
||||||
|
end
|
||||||
|
show_stereotypes
|
||||||
|
selected classdiagram_ref 128014 // domain-model
|
||||||
|
open
|
||||||
|
classview_ref 128014 // domain
|
||||||
|
end
|
||||||
|
end
|
117
models/134658.diagram
Normal file
117
models/134658.diagram
Normal file
@ -0,0 +1,117 @@
|
|||||||
|
format 223
|
||||||
|
|
||||||
|
classinstancecanvas 128130 classinstance_ref 128514 // KontrolerAutomatu
|
||||||
|
xyz 107 26 2010 life_line_z 2000
|
||||||
|
end
|
||||||
|
classinstancecanvas 128258 classinstance_ref 128642 //
|
||||||
|
xyz 450 29 2015 life_line_z 2000
|
||||||
|
end
|
||||||
|
classinstancecanvas 132226 classinstance_ref 128770 //
|
||||||
|
xyz 811 27 2000 life_line_z 2000
|
||||||
|
end
|
||||||
|
classinstance 133890 class_ref 128142 // Klient
|
||||||
|
name "" xyz 8 15 2000 life_line_z 2000
|
||||||
|
classinstancecanvas 134146 classinstance_ref 135682 //
|
||||||
|
xyz 647 29 2020 life_line_z 2000
|
||||||
|
end
|
||||||
|
durationcanvas 128770 classinstance_ref 128130 // KontrolerAutomatu:Automat
|
||||||
|
xyzwh 230 146 2010 11 158
|
||||||
|
overlappingdurationcanvas 129538
|
||||||
|
xyzwh 236 257 2020 11 27
|
||||||
|
end
|
||||||
|
overlappingdurationcanvas 134914
|
||||||
|
xyzwh 236 150 2020 11 25
|
||||||
|
end
|
||||||
|
end
|
||||||
|
durationcanvas 129026 classinstance_ref 128258 // :ManagerTransakcji
|
||||||
|
xyzwh 514 191 2010 11 329
|
||||||
|
end
|
||||||
|
durationcanvas 132354 classinstance_ref 132226 // :ModulPlatnosciGotowkowej
|
||||||
|
xyzwh 990 222 2010 11 260
|
||||||
|
overlappingdurationcanvas 135170
|
||||||
|
xyzwh 996 250 2020 11 26
|
||||||
|
end
|
||||||
|
overlappingdurationcanvas 136706
|
||||||
|
xyzwh 996 450 2020 11 26
|
||||||
|
end
|
||||||
|
end
|
||||||
|
durationcanvas 134274 classinstance_ref 134146 // :Sprzedaz
|
||||||
|
xyzwh 712 225 2010 11 315
|
||||||
|
overlappingdurationcanvas 135810
|
||||||
|
xyzwh 718 498 2020 11 26
|
||||||
|
end
|
||||||
|
overlappingdurationcanvas 136450
|
||||||
|
xyzwh 718 406 2020 11 25
|
||||||
|
end
|
||||||
|
end
|
||||||
|
durationcanvas 134786 classinstance_ref 133890 // :Klient
|
||||||
|
xyzwh 24 149 2010 11 27
|
||||||
|
end
|
||||||
|
msg 129154 synchronous
|
||||||
|
from durationcanvas_ref 128770
|
||||||
|
to durationcanvas_ref 129026
|
||||||
|
yz 204 2015 explicitmsg "rozpocznijTransakcje()"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
args "idProdukt:String"
|
||||||
|
label_xy 249 187
|
||||||
|
msg 129666 synchronous
|
||||||
|
from durationcanvas_ref 129026
|
||||||
|
to durationcanvas_ref 129538
|
||||||
|
yz 272 2025 explicitmsg "wyswietlKwote()"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
args "kwota:Kwota"
|
||||||
|
label_xy 260 252
|
||||||
|
msg 134402 synchronous
|
||||||
|
from durationcanvas_ref 129026
|
||||||
|
to durationcanvas_ref 134274
|
||||||
|
yz 230 3005 explicitmsg "create()"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
args "status:State, idProduktu:String, kwota:Kwota"
|
||||||
|
label_xy 547 212
|
||||||
|
msg 135042 synchronous
|
||||||
|
from durationcanvas_ref 134786
|
||||||
|
to durationcanvas_ref 134914
|
||||||
|
yz 153 2025 explicitmsg "wybranyProdukt()"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
args "numerProduktu:Int"
|
||||||
|
label_xy 26 129
|
||||||
|
msg 135298 synchronous
|
||||||
|
from durationcanvas_ref 134274
|
||||||
|
to durationcanvas_ref 135170
|
||||||
|
yz 264 2025 explicitmsg "aktywuj()"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
label_xy 832 247
|
||||||
|
msg 135426 return
|
||||||
|
from durationcanvas_ref 132354
|
||||||
|
to durationcanvas_ref 134274
|
||||||
|
yz 336 2015 explicitmsg "kwota:Kwota"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
label_xy 818 319
|
||||||
|
msg 135938 synchronous
|
||||||
|
from durationcanvas_ref 129026
|
||||||
|
to durationcanvas_ref 135810
|
||||||
|
yz 498 2025 explicitmsg "end()"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
args "status:State"
|
||||||
|
label_xy 580 481
|
||||||
|
msg 136066 return
|
||||||
|
from durationcanvas_ref 134274
|
||||||
|
to durationcanvas_ref 129026
|
||||||
|
yz 354 2015 explicitmsg "kwota:Kwota"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
label_xy 592 337
|
||||||
|
msg 136578 synchronous
|
||||||
|
from durationcanvas_ref 129026
|
||||||
|
to durationcanvas_ref 136450
|
||||||
|
yz 413 2025 explicitmsg "reszta()"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
args "kwota:Kwota"
|
||||||
|
label_xy 546 396
|
||||||
|
msg 136834 synchronous
|
||||||
|
from durationcanvas_ref 134274
|
||||||
|
to durationcanvas_ref 136706
|
||||||
|
yz 450 2025 explicitmsg "zwrocReszte()"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
args "kwota:Kwota"
|
||||||
|
label_xy 772 433
|
||||||
|
end
|
117
models/134658_13.d
Normal file
117
models/134658_13.d
Normal file
@ -0,0 +1,117 @@
|
|||||||
|
format 223
|
||||||
|
|
||||||
|
classinstancecanvas 128130 classinstance_ref 128514 // KontrolerAutomatu
|
||||||
|
xyz 107 26 2010 life_line_z 2000
|
||||||
|
end
|
||||||
|
classinstancecanvas 128258 classinstance_ref 128642 //
|
||||||
|
xyz 450 29 2015 life_line_z 2000
|
||||||
|
end
|
||||||
|
classinstancecanvas 132226 classinstance_ref 128770 //
|
||||||
|
xyz 811 27 2000 life_line_z 2000
|
||||||
|
end
|
||||||
|
classinstance 133890 class_ref 128142 // Klient
|
||||||
|
name "" xyz 8 15 2000 life_line_z 2000
|
||||||
|
classinstancecanvas 134146 classinstance_ref 135682 //
|
||||||
|
xyz 647 29 2020 life_line_z 2000
|
||||||
|
end
|
||||||
|
durationcanvas 128770 classinstance_ref 128130 // KontrolerAutomatu:Automat
|
||||||
|
xyzwh 197 146 2010 11 158
|
||||||
|
overlappingdurationcanvas 129538
|
||||||
|
xyzwh 203 257 2020 11 27
|
||||||
|
end
|
||||||
|
overlappingdurationcanvas 134914
|
||||||
|
xyzwh 203 150 2020 11 25
|
||||||
|
end
|
||||||
|
end
|
||||||
|
durationcanvas 129026 classinstance_ref 128258 // :ManagerTransakcji
|
||||||
|
xyzwh 514 191 2010 11 329
|
||||||
|
end
|
||||||
|
durationcanvas 132354 classinstance_ref 132226 // :ModulPlatnosciGotowkowej
|
||||||
|
xyzwh 902 222 2010 11 260
|
||||||
|
overlappingdurationcanvas 135170
|
||||||
|
xyzwh 908 250 2020 11 26
|
||||||
|
end
|
||||||
|
overlappingdurationcanvas 136706
|
||||||
|
xyzwh 908 450 2020 11 26
|
||||||
|
end
|
||||||
|
end
|
||||||
|
durationcanvas 134274 classinstance_ref 134146 // :Sprzedaz
|
||||||
|
xyzwh 681 225 2010 11 315
|
||||||
|
overlappingdurationcanvas 135810
|
||||||
|
xyzwh 687 498 2020 11 26
|
||||||
|
end
|
||||||
|
overlappingdurationcanvas 136450
|
||||||
|
xyzwh 687 406 2020 11 25
|
||||||
|
end
|
||||||
|
end
|
||||||
|
durationcanvas 134786 classinstance_ref 133890 // :Klient
|
||||||
|
xyzwh 24 149 2010 11 27
|
||||||
|
end
|
||||||
|
msg 129154 synchronous
|
||||||
|
from durationcanvas_ref 128770
|
||||||
|
to durationcanvas_ref 129026
|
||||||
|
yz 204 2015 explicitmsg "rozpocznijTransakcje()"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
args "idProdukt:String"
|
||||||
|
label_xy 249 187
|
||||||
|
msg 129666 synchronous
|
||||||
|
from durationcanvas_ref 129026
|
||||||
|
to durationcanvas_ref 129538
|
||||||
|
yz 272 2025 explicitmsg "wyswietlKwote()"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
args "kwota:Kwota"
|
||||||
|
label_xy 260 252
|
||||||
|
msg 134402 synchronous
|
||||||
|
from durationcanvas_ref 129026
|
||||||
|
to durationcanvas_ref 134274
|
||||||
|
yz 230 3005 explicitmsg "create()"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
args "status:State, idProduktu:String, kwota:Kwota"
|
||||||
|
label_xy 547 212
|
||||||
|
msg 135042 synchronous
|
||||||
|
from durationcanvas_ref 134786
|
||||||
|
to durationcanvas_ref 134914
|
||||||
|
yz 153 2025 explicitmsg "wybranyProdukt()"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
args "numerProduktu:Int"
|
||||||
|
label_xy 26 129
|
||||||
|
msg 135298 synchronous
|
||||||
|
from durationcanvas_ref 134274
|
||||||
|
to durationcanvas_ref 135170
|
||||||
|
yz 264 2025 explicitmsg "aktywuj()"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
label_xy 832 247
|
||||||
|
msg 135426 return
|
||||||
|
from durationcanvas_ref 132354
|
||||||
|
to durationcanvas_ref 134274
|
||||||
|
yz 336 2015 explicitmsg "kwota:Kwota"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
label_xy 818 319
|
||||||
|
msg 135938 synchronous
|
||||||
|
from durationcanvas_ref 129026
|
||||||
|
to durationcanvas_ref 135810
|
||||||
|
yz 498 2025 explicitmsg "end()"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
args "status:State"
|
||||||
|
label_xy 580 481
|
||||||
|
msg 136066 return
|
||||||
|
from durationcanvas_ref 134274
|
||||||
|
to durationcanvas_ref 129026
|
||||||
|
yz 354 2015 explicitmsg "kwota:Kwota"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
label_xy 592 337
|
||||||
|
msg 136578 synchronous
|
||||||
|
from durationcanvas_ref 129026
|
||||||
|
to durationcanvas_ref 136450
|
||||||
|
yz 413 2025 explicitmsg "reszta()"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
args "kwota:Kwota"
|
||||||
|
label_xy 546 396
|
||||||
|
msg 136834 synchronous
|
||||||
|
from durationcanvas_ref 134274
|
||||||
|
to durationcanvas_ref 136706
|
||||||
|
yz 450 2025 explicitmsg "zwrocReszte()"
|
||||||
|
show_full_operations_definition default show_class_of_operation default drawing_language default show_context_mode default
|
||||||
|
args "kwota:Kwota"
|
||||||
|
label_xy 772 433
|
||||||
|
end
|
12
models/14.session
Normal file
12
models/14.session
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
window_sizes 1852 1016 434 1412 843 120
|
||||||
|
cleanlooks_style
|
||||||
|
diagrams
|
||||||
|
active classdiagram_ref 128014 // domain-model
|
||||||
|
1129 674 100 A4 0 0
|
||||||
|
end
|
||||||
|
show_stereotypes
|
||||||
|
selected classdiagram_ref 128014 // domain-model
|
||||||
|
open
|
||||||
|
classview_ref 128014 // domain
|
||||||
|
end
|
||||||
|
end
|
15
models/2.session
Normal file
15
models/2.session
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
window_sizes 1920 1017 472 1443 890 74
|
||||||
|
|
||||||
|
diagrams
|
||||||
|
active sequencediagram_ref 134658 // 2-1-wprowadzenieNumeruProduktu
|
||||||
|
1443 890 100 A3 0 0
|
||||||
|
classdiagram_ref 128014 // domain-model
|
||||||
|
1316 815 100 A1 708 705
|
||||||
|
end
|
||||||
|
show_stereotypes
|
||||||
|
selected classinstance_ref 128770 //
|
||||||
|
open
|
||||||
|
class_ref 128142 // Klient
|
||||||
|
sequencediagram_ref 134658 // 2-1-wprowadzenieNumeruProduktu
|
||||||
|
end
|
||||||
|
end
|
13
models/cpp_includes
Normal file
13
models/cpp_includes
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
// "a type" "needed cpp_includes"
|
||||||
|
"vector" "#include <vector>
|
||||||
|
using namespace std;"
|
||||||
|
|
||||||
|
"list" "#include <list>
|
||||||
|
using namespace std;"
|
||||||
|
|
||||||
|
"map" "#include <map>
|
||||||
|
using namespace std;"
|
||||||
|
|
||||||
|
"string" "#include <string>
|
||||||
|
using namespace std;"
|
||||||
|
|
332
models/generation_settings
Normal file
332
models/generation_settings
Normal file
@ -0,0 +1,332 @@
|
|||||||
|
|
||||||
|
|
||||||
|
cpp_h_extension "h" cpp_src_extension "cpp" cpp_h_add_extensions "" cpp_src_add_extensions "" java_extension "java" php_extension "php" python_extension "py" idl_extension "idl"
|
||||||
|
cpp_inline_dont_force_incl_in_h
|
||||||
|
|
||||||
|
type_forms 15 // uml cpp java idl cpp_in cpp_out cpp_inout cpp_return
|
||||||
|
"void" "void" "void" "void" "${type}" "${type} &" "${type}" "${type}"
|
||||||
|
"any" "void *" "Object" "any" "const ${type}" "${type}" "${type} &" "${type}"
|
||||||
|
"bool" "bool" "boolean" "boolean" "${type}" "${type} &" "${type} &" "${type}"
|
||||||
|
"char" "char" "char" "char" "${type}" "${type} &" "${type} &" "${type}"
|
||||||
|
"uchar" "unsigned char" "char" "octet" "${type}" "${type} &" "${type} &" "${type}"
|
||||||
|
"byte" "unsigned char" "byte" "octet" "${type}" "${type} &" "${type} &" "${type}"
|
||||||
|
"short" "short" "short" "short" "${type}" "${type} &" "${type} &" "${type}"
|
||||||
|
"ushort" "unsigned short" "short" "unsigned short" "${type}" "${type} &" "${type} &" "${type}"
|
||||||
|
"int" "int" "int" "long" "${type}" "${type} &" "${type} &" "${type}"
|
||||||
|
"uint" "unsigned int" "int" "unsigned long" "${type}" "${type} &" "${type} &" "${type}"
|
||||||
|
"long" "long" "long" "long" "${type}" "${type} &" "${type} &" "${type}"
|
||||||
|
"ulong" "unsigned long" "long" "unsigned long" "${type}" "${type} &" "${type} &" "${type}"
|
||||||
|
"float" "float" "float" "float" "${type}" "${type} &" "${type} &" "${type}"
|
||||||
|
"double" "double" "double" "double" "${type}" "${type} &" "${type} &" "${type}"
|
||||||
|
"string" "string" "String" "string" "${type}" "${type} &" "${type} &" "${type}"
|
||||||
|
|
||||||
|
relations_stereotypes 5 // uml cpp java pythonidl
|
||||||
|
"sequence" "vector" "Vector" "list" "sequence"
|
||||||
|
"vector" "vector" "Vector" "list" "sequence"
|
||||||
|
"list" "list" "List" "list" "sequence"
|
||||||
|
"set" "set" "Set" "set" "sequence"
|
||||||
|
"map" "map" "Map" "dict" "sequence"
|
||||||
|
|
||||||
|
classes_stereotypes 17 // uml cpp java php python idl
|
||||||
|
"class" "class" "class" "class" "class" "valuetype"
|
||||||
|
"trait" "class" "class" "trait" "class" "valuetype"
|
||||||
|
"interface" "class" "interface" "interface" "class" "interface"
|
||||||
|
"exception" "class" "class" "class" "class" "exception"
|
||||||
|
"enum" "enum" "enum" "enum" "enum" "enum"
|
||||||
|
"enum_class" "enum_class" "enum" "enum" "enum" "enum"
|
||||||
|
"enum_pattern" "enum" "enum_pattern" "enum" "enum" "enum"
|
||||||
|
"struct" "struct" "class" "class" "class" "struct"
|
||||||
|
"union" "union" "class" "class" "class" "union"
|
||||||
|
"typedef" "typedef" "ignored" "ignored" "ignored" "typedef"
|
||||||
|
"template_typedef" "template_typedef" "ignored" "ignored" "ignored" "ignored"
|
||||||
|
"boundary" "class" "class" "class" "class" "interface"
|
||||||
|
"control" "class" "class" "class" "class" "valuetype"
|
||||||
|
"entity" "class" "class" "class" "class" "valuetype"
|
||||||
|
"actor" "ignored" "ignored" "ignored" "ignored" "ignored"
|
||||||
|
"@interface" "ignored" "@interface" "ignored" "ignored" "ignored"
|
||||||
|
"stereotype" "ignored" "ignored" "ignored" "ignored" "ignored"
|
||||||
|
|
||||||
|
cpp_enum_default_type_forms "${type}" "${type} &" "${type} &" "${type}" // in out inout return
|
||||||
|
other_cpp_types_default_type_forms "const ${type} &" "${type} &" "${type} &" "${type}" // in out inout return
|
||||||
|
|
||||||
|
cpp_default_h_content "#ifndef ${NAMESPACE}_${NAME}_H
|
||||||
|
#define ${NAMESPACE}_${NAME}_H
|
||||||
|
|
||||||
|
${comment}
|
||||||
|
${includes}
|
||||||
|
${declarations}
|
||||||
|
${namespace_start}
|
||||||
|
${definition}
|
||||||
|
${namespace_end}
|
||||||
|
#endif
|
||||||
|
"
|
||||||
|
cpp_default_src_content "${comment}
|
||||||
|
${includes}
|
||||||
|
${namespace_start}
|
||||||
|
${members}
|
||||||
|
${namespace_end}"
|
||||||
|
cpp_default_class_decl "${comment}${template}class ${name}${inherit} {
|
||||||
|
${members}};
|
||||||
|
${inlines}
|
||||||
|
"
|
||||||
|
cpp_default_external_class_decl "${name}
|
||||||
|
#include <${name}.h>
|
||||||
|
"
|
||||||
|
cpp_default_struct_decl "${comment}${template}struct ${name}${inherit} {
|
||||||
|
${members}};
|
||||||
|
${inlines}
|
||||||
|
"
|
||||||
|
cpp_default_union_decl "${comment}${template}union ${name} {
|
||||||
|
${members}};
|
||||||
|
${inlines}
|
||||||
|
"
|
||||||
|
cpp_default_enum_decl "${comment}enum ${name} {
|
||||||
|
${items}};
|
||||||
|
"
|
||||||
|
cpp_default_enumclass_decl "${comment}enum class ${name} {
|
||||||
|
${items}};
|
||||||
|
"
|
||||||
|
cpp_default_typedef_decl "${comment}typedef ${type} ${name};
|
||||||
|
"cpp_default_template_typedef_decl "${comment}${template}using ${name} = ${inherit};
|
||||||
|
"
|
||||||
|
cpp_default_attribute_declaration " ${comment}${static}${thread_local}${mutable}${volatile}${const}${type} ${name}${value};
|
||||||
|
" // multiplicity 1
|
||||||
|
" ${comment}${static}${thread_local}${mutable}${volatile}${const}${stereotype}<${type}> ${name}${value};
|
||||||
|
" // multiplicity * a..b
|
||||||
|
" ${comment}${static}${thread_local}${mutable}${volatile}${const}${type} ${name}${multiplicity}${value};
|
||||||
|
" // multiplicity [..]
|
||||||
|
cpp_default_enum_item_declaration " ${name}${value},${comment}"
|
||||||
|
cpp_association_aggregation_declaration
|
||||||
|
" ${comment}${static}${thread_local}${mutable}${volatile}${const}${type} * ${name}${value};
|
||||||
|
" // multiplicity 1
|
||||||
|
" ${comment}${static}${thread_local}${mutable}${volatile}${const}${stereotype}<${type} *> ${name}${value};
|
||||||
|
" // multiplicity * a..b
|
||||||
|
" ${comment}${static}${thread_local}${mutable}${volatile}${const}${type} * ${name}${multiplicity}${value};
|
||||||
|
" // multiplicity [..]
|
||||||
|
cpp_aggregation_by_value_declaration
|
||||||
|
" ${comment}${static}${thread_local}${mutable}${volatile}${const}${type} ${name}${value};
|
||||||
|
" // multiplicity 1
|
||||||
|
" ${comment}${static}${thread_local}${mutable}${volatile}${const}${stereotype}<${type}> ${name}${value};
|
||||||
|
" // multiplicity * a..b
|
||||||
|
" ${comment}${static}${thread_local}${mutable}${volatile}${const}${type} ${name}${multiplicity}${value};
|
||||||
|
" // multiplicity [..]
|
||||||
|
cpp_get "get_${name}" inline const value_const public
|
||||||
|
cpp_set "set_${name}" public
|
||||||
|
cpp_default_operation_declaration " ${comment}${friend}${static}${inline}${virtual}${typeprefix}${type} ${name}${(}${)}${const}${volatile}${throw}${abstract};
|
||||||
|
"
|
||||||
|
cpp_default_operation_definition "${comment}${inline}${typeprefix}${type} ${class}::${name}${(}${)}${const}${volatile}${throw}${staticnl}{
|
||||||
|
${body}}
|
||||||
|
"
|
||||||
|
cpp_indent_visibility " " cpp_indent_friendclass " " cpp_indent_subclass " "
|
||||||
|
java_default_src_content "${comment}
|
||||||
|
${package}
|
||||||
|
${imports}
|
||||||
|
${definition}"
|
||||||
|
java_default_class_decl "${comment}${@}${visibility}${static}${final}${abstract}class ${name}${extends}${implements} {
|
||||||
|
${members}}
|
||||||
|
"
|
||||||
|
java_default_external_class_decl "${name}"
|
||||||
|
java_default_interface_decl "${comment}${@}${visibility}${static}interface ${name}${extends} {
|
||||||
|
${members}}
|
||||||
|
"
|
||||||
|
java5_default_enum_decl "${comment}${@}${visibility}${static}${final}${abstract}enum ${name}${implements} {
|
||||||
|
${items};
|
||||||
|
${members}}
|
||||||
|
"
|
||||||
|
java_default_enum_decl "${comment}${@}${visibility}${static}$final class ${name} {
|
||||||
|
${members}
|
||||||
|
private final int value;
|
||||||
|
|
||||||
|
public int value() {
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static ${name} fromInt(int value) {
|
||||||
|
switch (value) {
|
||||||
|
${cases} default: throw new Error();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
private ${name}(int v) { value = v; };
|
||||||
|
}
|
||||||
|
"
|
||||||
|
java_default_attribute_declaration " ${comment}${@}${visibility}${static}${final}${transient}${volatile}${type} ${name}${value};
|
||||||
|
" // multiplicity 1
|
||||||
|
" ${comment}${@}${visibility}${static}${final}${transient}${volatile}${stereotype}<${type}> ${name}${value};
|
||||||
|
" // multiplicity * a..b
|
||||||
|
" ${comment}${@}${visibility}${static}${final}${transient}${volatile}${type}${multiplicity} ${name}${value};
|
||||||
|
" // multiplicity N
|
||||||
|
java5_default_enum_item_declaration " ${@}${name}${value},${comment}"
|
||||||
|
java_default_enum_item_declaration " ${comment}${@}public static final int _${name}${value};
|
||||||
|
public static final ${class} ${name} = new ${class}(_${name});
|
||||||
|
"
|
||||||
|
java_default_enum_case " case _${name}: return ${name};
|
||||||
|
"
|
||||||
|
java_association_aggregation_declaration
|
||||||
|
" ${comment}${@}${visibility}${static}${final}${transient}${volatile}${type} ${name}${value};
|
||||||
|
" // multiplicity 1
|
||||||
|
" ${comment}${@}${visibility}${static}${final}${transient}${volatile}${stereotype}<${type}> ${name}${value};
|
||||||
|
" // multiplicity * a..b
|
||||||
|
" ${comment}${@}${visibility}${static}${final}${transient}${volatile}${type}${multiplicity} ${name}${value};
|
||||||
|
" // multiplicity N
|
||||||
|
java_get "get${Name}" final public
|
||||||
|
java_set "set${Name}" public
|
||||||
|
java_default_operation_definition " ${comment}${@}${visibility}${final}${static}${abstract}${synchronized}${type} ${name}${(}${)}${throws}${staticnl}{
|
||||||
|
${body}}
|
||||||
|
"
|
||||||
|
php_default_src_content "<?php
|
||||||
|
${comment}
|
||||||
|
${namespace}
|
||||||
|
${require_once}
|
||||||
|
${use}
|
||||||
|
${definition}
|
||||||
|
?>
|
||||||
|
"
|
||||||
|
php_default_class_decl "${comment}${final}${abstract}class ${name}${extends}${implements} {
|
||||||
|
${members}}
|
||||||
|
"
|
||||||
|
php_default_enum_decl "${comment}${visibility}final class ${name} {
|
||||||
|
${items}}
|
||||||
|
"
|
||||||
|
php_default_external_class_decl "${name}"
|
||||||
|
php_default_interface_decl "${comment}interface ${name}${extends} {
|
||||||
|
${members}}
|
||||||
|
"
|
||||||
|
php_default_trait_decl "${comment}trait ${name} {
|
||||||
|
${members}}
|
||||||
|
"
|
||||||
|
php_default_attribute_declaration " ${comment}${visibility}${const}${static}${var}${name}${value};
|
||||||
|
"
|
||||||
|
php_default_enum_item_decl " const ${name}${value};${comment}
|
||||||
|
"
|
||||||
|
php_default_relation_declaration" ${comment}${visibility}${const}${static}${var}${name}${value};
|
||||||
|
"
|
||||||
|
php_get "get${Name}" final
|
||||||
|
php_set "set${Name}"
|
||||||
|
php_default_operation_definition " ${comment}${final}${visibility}${abstract}${static}function ${name}${(}${)}${type}
|
||||||
|
{
|
||||||
|
${body}}
|
||||||
|
"
|
||||||
|
php_param_typed php_out_inout_by_ref python_2_2
|
||||||
|
python_indent_step " "
|
||||||
|
python_default_src_content "${comment}
|
||||||
|
${import}
|
||||||
|
${definition}"
|
||||||
|
python_default_class_decl "class ${name}${inherit}:
|
||||||
|
${docstring}${members}
|
||||||
|
"
|
||||||
|
python_default_enum_decl "class ${name}:
|
||||||
|
${docstring}${members}
|
||||||
|
"
|
||||||
|
python_default_external_class_decl "${name}"
|
||||||
|
python_default_attribute_declaration "${comment}${self}${name} = ${value}
|
||||||
|
" // multiplicity 1
|
||||||
|
"${comment}${self}${name} = ${stereotype}()
|
||||||
|
" // multiplicity != 1
|
||||||
|
python_default_enum_item_decl "${comment}${self}${name} = ${value}
|
||||||
|
"
|
||||||
|
python_default_relation_declaration"${comment}${self}${name} = ${value}
|
||||||
|
" // multiplicity 1
|
||||||
|
"${comment}${self}${name} = ${stereotype}()
|
||||||
|
" // multiplicity != 1
|
||||||
|
python_default_composition_declaration"${comment}${self}${name} = ${type}()
|
||||||
|
" // multiplicity 1
|
||||||
|
"${comment}${self}${name} = ${stereotype}()
|
||||||
|
" // multiplicity != 1
|
||||||
|
python_default_operation_definition "${@}${static}${abstract}def ${name}${(}${)}:
|
||||||
|
${docstring}${body}
|
||||||
|
"
|
||||||
|
python_default_initoperation_definition "${@}${static}${abstract}def ${name}${(}${p0}${v0}${)}:
|
||||||
|
${docstring}super(${class}, ${p0}).__init__()
|
||||||
|
${body}
|
||||||
|
"
|
||||||
|
python_get "get${Name}"
|
||||||
|
python_set "set${Name}"
|
||||||
|
idl_default_src_content "#ifndef ${MODULE}_${NAME}_H
|
||||||
|
#define ${MODULE}_${NAME}_H
|
||||||
|
|
||||||
|
${comment}
|
||||||
|
${includes}
|
||||||
|
${module_start}
|
||||||
|
${definition}
|
||||||
|
${module_end}
|
||||||
|
#endif
|
||||||
|
"
|
||||||
|
idl_default_interface_decl "${comment}${abstract}${local}interface ${name}${inherit} {
|
||||||
|
${members}};
|
||||||
|
"
|
||||||
|
idl_default_valuetype_decl "${comment}${abstract}${custom}valuetype ${name}${inherit} {
|
||||||
|
${members}};
|
||||||
|
"
|
||||||
|
idl_default_struct_decl "${comment}struct ${name} {
|
||||||
|
${members}};
|
||||||
|
"
|
||||||
|
idl_default_typedef_decl "${comment}typedef ${type} ${name};
|
||||||
|
"
|
||||||
|
idl_default_exception_decl "${comment}exception ${name} {
|
||||||
|
${members}};
|
||||||
|
"
|
||||||
|
idl_default_union_decl "${comment}union ${name} switch(${switch}) {
|
||||||
|
${members}};
|
||||||
|
"
|
||||||
|
idl_default_enum_decl "${comment}enum ${name} {
|
||||||
|
${items}};
|
||||||
|
"
|
||||||
|
idl_default_external_class_decl "${name}
|
||||||
|
#include \"${name}.idl\"
|
||||||
|
"
|
||||||
|
idl_default_attribute_declaration " ${comment}${readonly}${attribute}${type} ${name};
|
||||||
|
" // multiplicity 1
|
||||||
|
" ${comment}${readonly}${attribute}${stereotype}<${type}> ${name};
|
||||||
|
" // multiplicity * a..b
|
||||||
|
" ${comment}${readonly}${attribute}${stereotype}<${type},${multiplicity}> ${name};
|
||||||
|
" // multiplicity N
|
||||||
|
idl_default_valuetype_attribute_declaration " ${comment}${visibility}${type} ${name};
|
||||||
|
" // multiplicity 1
|
||||||
|
" ${comment}${visibility}${stereotype}<${type}> ${name};
|
||||||
|
" // multiplicity * a..b
|
||||||
|
" ${comment}${visibility}${stereotype}<${type},${multiplicity}> ${name};
|
||||||
|
" // multiplicity N
|
||||||
|
idl_default_const_declaration " ${comment}const ${type} ${name}${value};
|
||||||
|
" // multiplicity 1
|
||||||
|
" ${comment}const ${stereotype}<${type}> ${name}${value};
|
||||||
|
" // multiplicity * a..b
|
||||||
|
" ${comment}const ${stereotype}<${type},${multiplicity}> ${name}${value};
|
||||||
|
" // multiplicity N
|
||||||
|
idl_default_enum_item_declaration " ${name},${comment}"
|
||||||
|
idl_default_union_item_declaration " ${comment}case ${case} : ${readonly}${type} ${name};" // multiplicity 1
|
||||||
|
" ${comment}case ${case} : ${readonly}${stereotype}<${type}> ${name};" // multiplicity * a..b
|
||||||
|
" ${comment}case ${case} : ${readonly}${stereotype}<${type},${multiplicity}> ${name};" // multiplicity N
|
||||||
|
idl_association_aggregation_declaration
|
||||||
|
" ${comment}${readonly}${attribute}${type} ${name};
|
||||||
|
" // multiplicity 1
|
||||||
|
" ${comment}${readonly}${attribute}${stereotype}<${type}> ${name};
|
||||||
|
" // multiplicity * a..b
|
||||||
|
" ${comment}${readonly}${attribute}${stereotype}<${type},${multiplicity}> ${name};
|
||||||
|
" // multiplicity N
|
||||||
|
idl_valuetype_association_aggregation_declaration
|
||||||
|
" ${comment}${visibility}${type} ${name};
|
||||||
|
" // multiplicity 1
|
||||||
|
" ${comment}${visibility}${stereotype}<${type}> ${name};
|
||||||
|
" // multiplicity * a..b
|
||||||
|
" ${comment}${visibility}${stereotype}<${type},${multiplicity}> ${name};
|
||||||
|
" // multiplicity N
|
||||||
|
idl_union_association_aggregation_declaration
|
||||||
|
" ${comment}case ${case} : ${readonly}${type} ${name};" // multiplicity 1
|
||||||
|
" ${comment}case ${case} : ${readonly}${stereotype}<${type}> ${name};" // multiplicity * a..b
|
||||||
|
" ${comment}case ${case} : ${readonly}${stereotype}<${type},${multiplicity}> ${name};" // multiplicity N
|
||||||
|
idl_get "get_${name}"
|
||||||
|
idl_set "set_${name}" twoways
|
||||||
|
idl_default_operation_declaration " ${comment}${oneway}${type} ${name}${(}${)}${raisesnl}${raises};
|
||||||
|
"
|
||||||
|
mysqldefault_src_content "${comment}CREATE DATABASE IF NOT EXISTS ${name};
|
||||||
|
use ${name};
|
||||||
|
|
||||||
|
${definition}"
|
||||||
|
mysql_default_table_decl "DROP TABLE IF EXISTS ${name};
|
||||||
|
CREATE TABLE ${name} ${definition}${comment};
|
||||||
|
"
|
||||||
|
mysql_default_column_decl " ${name} ${type}${notnull}${default}${autoincr}${comment}"
|
||||||
|
mysql_default_key_decl " ${constraint}${modifier}KEY${name}${type} (${columns})${ref}${comment}"
|
||||||
|
uml_get_name uml uml_set_name uml
|
||||||
|
end
|
1
models/idl_includes
Normal file
1
models/idl_includes
Normal file
@ -0,0 +1 @@
|
|||||||
|
// "a type" "needed idl_includes"
|
1
models/java_imports
Normal file
1
models/java_imports
Normal file
@ -0,0 +1 @@
|
|||||||
|
// "a type" "needed java_imports"
|
1822
models/models.prj
Normal file
1822
models/models.prj
Normal file
File diff suppressed because it is too large
Load Diff
1
models/python_imports
Normal file
1
models/python_imports
Normal file
@ -0,0 +1 @@
|
|||||||
|
// "a type" "needed python_imports"
|
63
models/stereotypes
Normal file
63
models/stereotypes
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
|
||||||
|
package_stereotypes 6 "facade" "framework" "model library" "stub" "toplevel" "profile"
|
||||||
|
-_-> 3 "access" "import" "from"
|
||||||
|
end
|
||||||
|
|
||||||
|
class_stereotypes 23 "actor" "auxiliary" "boundary" "control" "entity" "enum" "enum_class" "enum_pattern" "exception" "focus" "implementationClass" "interface" "@interface" "metaclass" "stereotype" "struct" "table" "type" "typedef" "template_typedef" "union" "utility" "trait"
|
||||||
|
---- 4 "list" "set" "vector" "map"
|
||||||
|
---> 4 "list" "set" "vector" "map"
|
||||||
|
---|> 4 "{complete,disjoint}" "{incomplete,disjoint}" "{complete,overlapping}" "{incomplete,overlapping}"
|
||||||
|
o--- 4 "list" "set" "vector" "map"
|
||||||
|
*--- 4 "list" "set" "vector" "map"
|
||||||
|
o--> 4 "list" "set" "vector" "map"
|
||||||
|
*--> 4 "list" "set" "vector" "map"
|
||||||
|
-_-> 5 "friend" "from" "import" "instantiate" "use"
|
||||||
|
-_-|> 1 "bind"
|
||||||
|
end
|
||||||
|
|
||||||
|
rolepart_stereotypes 0
|
||||||
|
use_case_stereotypes 2 "realization" "realization"
|
||||||
|
|
||||||
|
---|> 4 "{complete,disjoint}" "{incomplete,disjoint}" "{complete,overlapping}" "{incomplete,overlapping}"
|
||||||
|
-_-> 2 "include" "extend"
|
||||||
|
end
|
||||||
|
|
||||||
|
artifact_stereotypes 8 "database" "document" "executable" "file" "library" "script" "source" "text"
|
||||||
|
-_-> 4 "deploy" "manifest" "import" "from"
|
||||||
|
end
|
||||||
|
|
||||||
|
attribute_stereotypes 4 "list" "set" "vector" "map"
|
||||||
|
operation_stereotypes 0
|
||||||
|
state_stereotypes 3 "machine" "submachine" "top"
|
||||||
|
activity_stereotypes 0
|
||||||
|
flow_stereotypes 3 "interrupt" "multicast" "multireceive"
|
||||||
|
interruptibleactivityregion_stereotypes 0
|
||||||
|
pseudostate_stereotypes 0
|
||||||
|
stateaction_stereotypes 2 "send-signal" "receive-signal"
|
||||||
|
parameter_stereotypes 0
|
||||||
|
activityvariable_stereotypes 0
|
||||||
|
parameterset_stereotypes 0
|
||||||
|
activitynode_stereotypes 0
|
||||||
|
activityaction_stereotypes 0
|
||||||
|
activityobject_stereotypes 2 "datastore" "centralBuffer"
|
||||||
|
expansionregion_stereotypes 0
|
||||||
|
activitypartition_stereotypes 0
|
||||||
|
pin_stereotypes 0
|
||||||
|
port_stereotypes 0
|
||||||
|
component_stereotypes 6 "buildComponent" "entity" "implement" "process" "service" "subsystem"
|
||||||
|
deploymentnode_stereotypes 3 "cpu" "device" "executionEnvironment"
|
||||||
|
classview_stereotypes 0
|
||||||
|
usecaseview_stereotypes 0
|
||||||
|
componentview_stereotypes 0
|
||||||
|
deploymentview_stereotypes 0
|
||||||
|
classdiagram_stereotypes 0
|
||||||
|
classcompositediagram_stereotypes 0
|
||||||
|
seqdiagram_stereotypes 0
|
||||||
|
msg_stereotypes 0
|
||||||
|
coldiagram_stereotypes 0
|
||||||
|
usecasediagram_stereotypes 0
|
||||||
|
statediagram_stereotypes 0
|
||||||
|
activitydiagram_stereotypes 0
|
||||||
|
componentdiagram_stereotypes 0
|
||||||
|
deploymentdiagram_stereotypes 0
|
||||||
|
end
|
18
models/tools
Normal file
18
models/tools
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
// 'tool' "the executable" "displayed string" {target}+
|
||||||
|
tool "HTML documentation" "ghtml" Class Operation Attribute Generalisation Realize Dependency Association DirectionalAssociation Aggregation AggregationByValue DirectionalAggregation DirectionalAggregationByValue Port RolePart Connector ExtraMember ClassInstance State Region StateAction Initial EntryPoint Final Terminate ExitPoint DeepHistory ShallowHistory Junction Choice Fork Join Transition Activity InterruptibleActivityRegion ExpansionRegion ActivityObject ActivityAction Parameter ParameterSet Pin ExpansionNode InitialActivityNode FinalActivityNode ExitPointActivityNode DecisionActivityNode MergeActivityNode ForkActivityNode JoinActivityNode Flow Project Package UseCaseView ClassView ComponentView DeploymentView UseCaseDiagram SeqDiagram ColDiagram ClassDiagram ClassCompositeDiagram ObjectDiagram StateDiagram ActivityDiagram ComponentDiagram DeploymentDiagram UseCase Component Node Artifact Inherit DependOn
|
||||||
|
tool "HTML doc. (flat)" "ghtml -flat" Class Operation Attribute Generalisation Realize Dependency Association DirectionalAssociation Aggregation AggregationByValue DirectionalAggregation DirectionalAggregationByValue Port RolePart Connector ExtraMember ClassInstance State Region StateAction Initial EntryPoint Final Terminate ExitPoint DeepHistory ShallowHistory Junction Choice Fork Join Transition Activity InterruptibleActivityRegion ExpansionRegion ActivityObject ActivityAction Parameter ParameterSet Pin ExpansionNode InitialActivityNode FinalActivityNode ExitPointActivityNode DecisionActivityNode MergeActivityNode ForkActivityNode JoinActivityNode Flow Project Package UseCaseView ClassView ComponentView DeploymentView UseCaseDiagram SeqDiagram ColDiagram ClassDiagram ClassCompositeDiagram ObjectDiagram StateDiagram ActivityDiagram ComponentDiagram DeploymentDiagram UseCase Component Node Artifact Inherit DependOn
|
||||||
|
tool "HTML doc. (svg)" "ghtml -svg" Class Operation Attribute Generalisation Realize Dependency Association DirectionalAssociation Aggregation AggregationByValue DirectionalAggregation DirectionalAggregationByValue Port RolePart Connector ExtraMember ClassInstance State Region StateAction Initial EntryPoint Final Terminate ExitPoint DeepHistory ShallowHistory Junction Choice Fork Join Transition Activity InterruptibleActivityRegion ExpansionRegion ActivityObject ActivityAction Parameter ParameterSet Pin ExpansionNode InitialActivityNode FinalActivityNode ExitPointActivityNode DecisionActivityNode MergeActivityNode ForkActivityNode JoinActivityNode Flow Project Package UseCaseView ClassView ComponentView DeploymentView UseCaseDiagram SeqDiagram ColDiagram ClassDiagram ClassCompositeDiagram ObjectDiagram StateDiagram ActivityDiagram ComponentDiagram DeploymentDiagram UseCase Component Node Artifact Inherit DependOn
|
||||||
|
tool "HTML doc. (flat, svg)" "ghtml -flat -svg" Class Operation Attribute Generalisation Realize Dependency Association DirectionalAssociation Aggregation AggregationByValue DirectionalAggregation DirectionalAggregationByValue Port RolePart Connector ExtraMember ClassInstance State Region StateAction Initial EntryPoint Final Terminate ExitPoint DeepHistory ShallowHistory Junction Choice Fork Join Transition Activity InterruptibleActivityRegion ExpansionRegion ActivityObject ActivityAction Parameter ParameterSet Pin ExpansionNode InitialActivityNode FinalActivityNode ExitPointActivityNode DecisionActivityNode MergeActivityNode ForkActivityNode JoinActivityNode Flow Project Package UseCaseView ClassView ComponentView DeploymentView UseCaseDiagram SeqDiagram ColDiagram ClassDiagram ClassCompositeDiagram ObjectDiagram StateDiagram ActivityDiagram ComponentDiagram DeploymentDiagram UseCase Component Node Artifact Inherit DependOn
|
||||||
|
tool "Generate .pro" "gpro" Artifact
|
||||||
|
tool "Import Rose" "irose" Project Package
|
||||||
|
tool "C++ utilities" "cpp_util" Class
|
||||||
|
tool "Generate XMI 1.2" "gxmi" Project
|
||||||
|
tool "Generate XMI 2.x" "gxmi2" Project
|
||||||
|
tool "Import XMI 2.x" "ixmi2" Project Package
|
||||||
|
tool "C++ state machine" "stmgen" State
|
||||||
|
tool "Use case wizard" "usecasewizard" UseCase
|
||||||
|
tool "Check-in" "file_control ci" Project Package
|
||||||
|
tool "Check-out" "file_control co" Project Package
|
||||||
|
tool "Deploy classes" "deplcl" ClassView
|
||||||
|
tool "Global Change" "global_change" Class Project Package ClassView DeploymentView
|
||||||
|
tool "Uml projection" "uml_proj" Class Operation Attribute Generalisation Realize Dependency Association DirectionalAssociation Aggregation AggregationByValue DirectionalAggregation DirectionalAggregationByValue Project Package ClassView
|
40
system-events.md
Normal file
40
system-events.md
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
Zdarzenia systemowe
|
||||||
|
===================
|
||||||
|
|
||||||
|
Use case 2: Zakup produktu
|
||||||
|
-----------------
|
||||||
|
|
||||||
|
1. wprowadzenie numeru produktu
|
||||||
|
2. wybranie formy płatności
|
||||||
|
3. wprowadzanie monet
|
||||||
|
4. zaprzestanie wprowadzania monet podczas transakcji
|
||||||
|
|
||||||
|
Use case 4: Płatność kartą
|
||||||
|
-----------------
|
||||||
|
|
||||||
|
1. wybranie płatności kartą
|
||||||
|
|
||||||
|
Use case 7: Dodanie towaru do automatu
|
||||||
|
-----------------
|
||||||
|
|
||||||
|
1. wybranie opcji "dodaj produkty" i podanie hasła przez zaopatrzeniowca
|
||||||
|
2. dodanie produktów i wybranie opcji "uzypełniono towar" przez zaopatrzeniowca
|
||||||
|
3. zamknięcie automatu przez zaopatrzeniowca
|
||||||
|
|
||||||
|
Use case 8: Naprawa automatu w przypadku awarii systemu
|
||||||
|
-----------------
|
||||||
|
|
||||||
|
1. podłączenie laptopa i podanie hasła
|
||||||
|
2. włączenie narzędzi diagnostycznych
|
||||||
|
3. rozpoczęcie naprawy poprzez włączenie narzędzi naprawczych
|
||||||
|
4. zakończenie naprawy
|
||||||
|
5. zamkniecie automatu
|
||||||
|
6. ponowne uruchomienie automatu
|
||||||
|
7. przeprowadzenie testowej operacji zakupu
|
||||||
|
|
||||||
|
Use case 9: Generowanie raportu sprzedaży
|
||||||
|
-----------------
|
||||||
|
|
||||||
|
1. wybranie opcji "generowanie raportu sprzedaży" przez zaopatrzeniowca
|
||||||
|
2. wybranie produktu i ram czasowych przez zaopatrzeniowca
|
||||||
|
3. modyfikacje pól danych raportu sprzedaży, wybrane przez zaopatrzeniowca (produkt, ramy czasowe)
|
96
use-case-2.md
Normal file
96
use-case-2.md
Normal file
@ -0,0 +1,96 @@
|
|||||||
|
Use Case 2: Zakup produktu
|
||||||
|
=====================
|
||||||
|
|
||||||
|
**Aktor podstawowy:** Klient
|
||||||
|
|
||||||
|
|
||||||
|
Główni odbiorcy i oczekiwania względem systemu:
|
||||||
|
-----------------------------------------------
|
||||||
|
|
||||||
|
- Klient: zakup produktów
|
||||||
|
|
||||||
|
- System płatniczy: realizacja transakcji gotówkowych i płatności kartą
|
||||||
|
|
||||||
|
- Dział zaopatrzenia: odbiera raporty od automatu spożywczego
|
||||||
|
|
||||||
|
- Watchdog: Program wykrywający błędne działanie systemu.
|
||||||
|
|
||||||
|
Warunki wstępne:
|
||||||
|
----------------
|
||||||
|
|
||||||
|
Automat jest w trybie "uruchomiony".
|
||||||
|
|
||||||
|
Warunki końcowe:
|
||||||
|
----------------
|
||||||
|
|
||||||
|
Sprzedaż produktu odbyła się poprawnie. Płatność została autoryzowana. Maszyna przechowuje dane o transakcji.
|
||||||
|
|
||||||
|
Scenariusz główny (ścieżka podstawowa):
|
||||||
|
---------------------------------------
|
||||||
|
|
||||||
|
1. Klient wprowadza numer dostępnego produktu
|
||||||
|
2. Automat tworzy w systemie nową transakcję, nadaje jej status "rozpoczęta"
|
||||||
|
3. Automat wyświetla konieczną do zapłacenia kwotę
|
||||||
|
4. Klient wybiera formę płatności gotówką
|
||||||
|
5. Klient wrzuca monety
|
||||||
|
6. Po każdej wrzuconej monecie automat wyświetla pozostałą do zapłacenia kwotę (do momentu aż kwota wprowadzona zrówna się, bądź przewyższy wartości wybranego produktu)
|
||||||
|
7. Automat wydaje resztę
|
||||||
|
8. Automat przygotowuje i wydaje produkt
|
||||||
|
9. Automat sprawdza stan magazynowy sprzedanego produktu i monet
|
||||||
|
10. Automat automat aktualizuje status transakcji na "zakończona"
|
||||||
|
|
||||||
|
Rozszerzenia (ścieżki alternatywne):
|
||||||
|
------------------------------------
|
||||||
|
|
||||||
|
*a. watchdog wykrywa błąd/zacięcie systemu
|
||||||
|
|
||||||
|
1. watchdog resetuje automat i wprowadza go w tryb "uruchomiony". Automat sprawdza ostatnią transakcję zapisana w pamięci. Na podstawie kompleksowych danych z pamięci, automat jest wstanie kontynuować transakcję, w każdym jej kroku
|
||||||
|
|
||||||
|
2. ostatnia transakcja ma status "rozpoczęta"
|
||||||
|
|
||||||
|
2a. ostatnia transakcja ma status "zakończony"
|
||||||
|
|
||||||
|
1. automat jest gotowy do obsługi kolejnego klienta
|
||||||
|
|
||||||
|
3. automat kontynuuje sprzedaż wykonując następny krok procedury w stosunku do ostatniej zapisanej aktywności
|
||||||
|
|
||||||
|
4a. płatność kartą
|
||||||
|
|
||||||
|
1. automat komunikuje się z systemem płatniczym, wysyłając mu należną kwotę
|
||||||
|
2. klient płaci kartą płaniczą w sposób zbliżeniowy
|
||||||
|
3. system autoryzuje płatność
|
||||||
|
|
||||||
|
3a. system płatniczy odrzuca kartę
|
||||||
|
|
||||||
|
1. automat informuje klienta o odrzuconej płatności i wraca do kroku 2. scenariusza głównego
|
||||||
|
|
||||||
|
4. automat odbiera dane od systemu płatniczego
|
||||||
|
5. automat wyświetla komunikat o sukcesie
|
||||||
|
6. Następuje przejście do kroku 5. scenariusza głównego
|
||||||
|
|
||||||
|
6a. automat nie dostaje monet przez 45 sekund
|
||||||
|
|
||||||
|
1. automat zwraca wszystkie wrzucone monety z bieżącej transakcji
|
||||||
|
2. automat usuwa transakcję
|
||||||
|
3. automat jest gotów do realizacji kolejnej transakcji i wykonania kroku 1 scenariusza głównego
|
||||||
|
|
||||||
|
9a. stan magazynowy jest równy minimalnemu stanowi magazynowemu
|
||||||
|
|
||||||
|
1. automat poprzez sieć internetową wysyła informację do działu zaopatrzenia ze swoim ID i ID surowca.
|
||||||
|
|
||||||
|
Wymagania specjalne:
|
||||||
|
--------------------
|
||||||
|
|
||||||
|
- informacje o przebiegu każdego kroku transakcji są na bieżąco zapisywane w pamięci maszyny.
|
||||||
|
|
||||||
|
- numery produktów składają się z dwóch cyfr np. 01, 15
|
||||||
|
|
||||||
|
Wymagania technologiczne oraz ograniczenia na wprowadzane dane:
|
||||||
|
---------------------------------------------------------------
|
||||||
|
|
||||||
|
automat spożywczy jest podłączony do sieci internetowej za pomocą kabla sieciowego.
|
||||||
|
|
||||||
|
Kwestie otwarte:
|
||||||
|
----------------
|
||||||
|
|
||||||
|
- czy automat powinien przyjmować walutę Euro?
|
94
use-case-4.md
Normal file
94
use-case-4.md
Normal file
@ -0,0 +1,94 @@
|
|||||||
|
Use Case 1: Płatność kartą
|
||||||
|
=====================
|
||||||
|
|
||||||
|
**Aktor podstawowy:** Klient
|
||||||
|
|
||||||
|
|
||||||
|
Główni odbiorcy i oczekiwania względem systemu:
|
||||||
|
-----------------------------------------------
|
||||||
|
|
||||||
|
- Terminal: otrzymać potwierdzenie zapłaty
|
||||||
|
|
||||||
|
- Terminal: obsługiwać karty różnego rodzaju
|
||||||
|
|
||||||
|
- System autoryzacjic płatności: autoryzacja płatności
|
||||||
|
|
||||||
|
Warunki wstępne:
|
||||||
|
----------------
|
||||||
|
|
||||||
|
Klient wybrał produkt z listy oraz opcje płatności kartą.
|
||||||
|
|
||||||
|
Warunki końcowe:
|
||||||
|
----------------
|
||||||
|
|
||||||
|
Płatność zostaje zatwierdzona.
|
||||||
|
|
||||||
|
Scenariusz główny (ścieżka podstawowa):
|
||||||
|
---------------------------------------
|
||||||
|
|
||||||
|
1. Automat uruchamia terminal.
|
||||||
|
2. Terminal łączy się z serwisem płatniczym.
|
||||||
|
3. Automat wyświetla wartość zamówienia na terminalu, powiadamia o kotowości do operacji.
|
||||||
|
4. Klient dokonuje płatności kartą.
|
||||||
|
5. Automat wysyła dane potrzebne do przelewu.
|
||||||
|
6. Automat przetwarza informacje zwrotną.
|
||||||
|
7. Automat akceptuje transakcje.
|
||||||
|
|
||||||
|
Rozszerzenia (ścieżki alternatywne):
|
||||||
|
------------------------------------
|
||||||
|
|
||||||
|
*a. Terminal nie działa
|
||||||
|
|
||||||
|
1. Pojawienie się komunikatu, na ekranie startowym, o braktu możliwości płacenia kartą.
|
||||||
|
|
||||||
|
2a. Terminal nie może połączyć się z serwisem płatniczym.
|
||||||
|
|
||||||
|
1. Termianl ponawia próbę połączenie się
|
||||||
|
|
||||||
|
1. Próba połączenia się z serwisem (maksymalnie 3 próby).
|
||||||
|
2. Informuja dla klienta o braku możliwości płatności kartą.
|
||||||
|
3. Przerywanie obecnej transakcję.
|
||||||
|
|
||||||
|
2. krok trzeci rozszerzenia 3a
|
||||||
|
|
||||||
|
4a. Błąd podczas sczytywania danych(ZMIANA)
|
||||||
|
|
||||||
|
1. Przekroczenie limitu czasowego, po 30 sekundach oczekiwania na kartę
|
||||||
|
|
||||||
|
<!-- 1. Oczekiwanie na kartę przez 30s. -->
|
||||||
|
2. Informacja o przekroczeniu czas transakcji.
|
||||||
|
3. Przerwanie obecnej transakcji.
|
||||||
|
|
||||||
|
2. Błędne sczytanie danych
|
||||||
|
|
||||||
|
1. Prośba o ponowne przyłożenie karty.
|
||||||
|
2. Maksymalnie 3 próby.
|
||||||
|
3. Przerwanie obecnej transakcji.
|
||||||
|
|
||||||
|
5a. Zerwanie połaczenia z systemem
|
||||||
|
|
||||||
|
1. Powrót do kroku 2
|
||||||
|
|
||||||
|
6a. Brak potwierdzenia z terminalu
|
||||||
|
|
||||||
|
1. Komunikat o przerwaniu transakci.
|
||||||
|
2. Powrót do punktu 4.
|
||||||
|
|
||||||
|
Wymagania specjalne:
|
||||||
|
--------------------
|
||||||
|
|
||||||
|
- Komunikaty muszą pojawiać się na ekranie oraz być wymawiane przez syntezator mowy.
|
||||||
|
|
||||||
|
- Akceptowanie wyłącznie kart Visa i Mastercard.
|
||||||
|
|
||||||
|
Wymagania technologiczne oraz ograniczenia na wprowadzane dane:
|
||||||
|
---------------------------------------------------------------
|
||||||
|
|
||||||
|
2a.
|
||||||
|
|
||||||
|
Kwestie otwarte:
|
||||||
|
----------------
|
||||||
|
|
||||||
|
- Ile czasu oczekujemu na ponowną interakcję klienta z systemem po pojawieniu się błędów?
|
||||||
|
|
||||||
|
- Czy akceptowane będą wszyskie rodzaje kart?
|
90
use-case-7.md
Executable file
90
use-case-7.md
Executable file
@ -0,0 +1,90 @@
|
|||||||
|
Use Case 7: Dodanie towaru do automatu.
|
||||||
|
=====================
|
||||||
|
|
||||||
|
**Aktor podstawowy:** Zaopatrzeniowiec
|
||||||
|
|
||||||
|
|
||||||
|
Główni odbiorcy i oczekiwania względem systemu:
|
||||||
|
-----------------------------------------------
|
||||||
|
|
||||||
|
- Zaopatrzeniowiec: Dodanie przywiezionych towarów do automatu.
|
||||||
|
|
||||||
|
- Dział zaopatrzeniowy: Otrzymanie raportu o stanie produktów.
|
||||||
|
|
||||||
|
- Automat: Uzupełnienie ilości produktów.
|
||||||
|
|
||||||
|
Warunki wstępne:
|
||||||
|
----------------
|
||||||
|
|
||||||
|
Sprawny automat, gotowy do otrzymania nowych produktów lub uzupełninia ich braków.
|
||||||
|
Zaopatrzeniowiec z raportem o ilości wolnego miejsca w automacie przystępuje do dodania towarów.
|
||||||
|
|
||||||
|
Warunki końcowe:
|
||||||
|
----------------
|
||||||
|
|
||||||
|
Zaopatrzeniowiec dodał produkty.
|
||||||
|
Automat jest gotowy do obsłuzenia nowego klienta.
|
||||||
|
Dział zaopatrzeniowy otrzymuje raport o ilości produktów w automacie.
|
||||||
|
|
||||||
|
Scenariusz główny (ścieżka podstawowa):
|
||||||
|
---------------------------------------
|
||||||
|
|
||||||
|
1. Zaopatrzeniowiec wybiera opcję "dodaj produkty" oraz podając hasło, wprowadza go w stan
|
||||||
|
gotowości do otrzymania nowych towarów.
|
||||||
|
2. Zaopatrzeniowiec uzupełnia produkty w automacie.
|
||||||
|
3. Zaopatrzeniowiec wybiera opcję "uzupełniono towar".
|
||||||
|
4. Automat sprawdza stan produktów oraz wysyła raport do działu zaopatrzeniowego.
|
||||||
|
5. Automat przechodzi w stan gotowy do zamknięcia.
|
||||||
|
6. Zaopatrzeniowiec zamyka automat, automat moze odebrać nowe zamówienie.
|
||||||
|
|
||||||
|
Rozszerzenia (ścieżki alternatywne):
|
||||||
|
------------------------------------
|
||||||
|
|
||||||
|
1a. Podano nieprawidłowe hasło.
|
||||||
|
|
||||||
|
1. Automat wyświetla komunikat z informacją o podaniu nieprawidłowego hasła.
|
||||||
|
2. Ekran logowania pojawia się ponownie.
|
||||||
|
|
||||||
|
2a. Wielkorotnie wprowadzone nieprawidłowe hasło.
|
||||||
|
|
||||||
|
1. Automat przechodzi w stan gotowości do otrzymania nowego zamówienia oraz blokuje opcję dodania nowych produktów na 5 min.
|
||||||
|
|
||||||
|
|
||||||
|
4a. Błąd w trakcie sprawdzania stanu produków w automacie.
|
||||||
|
|
||||||
|
1. Automat powiadamia zaopatrzeniowca o błędzie podczas sprawdzania stanu towarów.
|
||||||
|
2. Zaopatrzeniowiec poprawia umieszczenie produktów oraz wybiera opcję "sprawdź ponownie".
|
||||||
|
3. Automat przechodzi do fazy sprawdzania stanu produktów.
|
||||||
|
|
||||||
|
|
||||||
|
4b. Automat nie moze wysłać wygenerowanego raportu do działu zaopatrzeniowego.
|
||||||
|
|
||||||
|
1. Automat powiadamia o błędzie zaopatrzeniowca.
|
||||||
|
2. Automat wyświetla raport na ekranie wbudowanego wyświetlacza.
|
||||||
|
3. Zaopatrzeniowiec, po zapoznaiu się z raportem, potwierdza jego odczytanie.
|
||||||
|
|
||||||
|
|
||||||
|
Wymagania specjalne:
|
||||||
|
--------------------
|
||||||
|
|
||||||
|
- Wprowadzenie zbyt duzej ilości produktów skutuje błędem w trakcie sprawdzania stanu produktów w automacie.
|
||||||
|
Ściezka 4a.
|
||||||
|
|
||||||
|
- Automat przechodzi w stan gotowości do otrzymania nowego zamówienia tylko jeśli jego czujniki wykryją poprawne zamknięcie drzwi. Ściezka 6.
|
||||||
|
|
||||||
|
|
||||||
|
Wymagania technologiczne oraz ograniczenia na wprowadzane dane:
|
||||||
|
---------------------------------------------------------------
|
||||||
|
|
||||||
|
1a. Hasło jest długości minimum 10 znaków.
|
||||||
|
|
||||||
|
4b. Automat wyświetla na ekranie czytelny dla zaopatrzeniowca raport.
|
||||||
|
|
||||||
|
|
||||||
|
Kwestie otwarte:
|
||||||
|
----------------
|
||||||
|
|
||||||
|
- Umieszczenie opcji serwisowych.
|
||||||
|
Czy mają one być klikane na ekranie autmatu, dostępne poprzez fizyczny guzik na automacie, czy moze zaopatrzeniowiec ma posiadać specjalne urządzenie serwisowe komunikujące się z automatem?
|
||||||
|
|
||||||
|
- Co oznacza czytelny raport?
|
130
use-case-8.md
Normal file
130
use-case-8.md
Normal file
@ -0,0 +1,130 @@
|
|||||||
|
Use Case 8: Naprawa automatu w przypadku awarii systemu
|
||||||
|
=====================
|
||||||
|
|
||||||
|
**Aktor podstawowy:** Serwisant
|
||||||
|
|
||||||
|
|
||||||
|
**Główni odbiorcy i oczekiwania względem systemu**:
|
||||||
|
------------------------------------------------
|
||||||
|
|
||||||
|
- **Serwisant**: Chce by serwis/naprawa poszły bezproblemowo i w ciągui jednego posiedzenia. Oczekuje jeszcze dobrze opisanej instrukcji naprawy automatu i dobrze zaprojektowanego systemu
|
||||||
|
|
||||||
|
- **Klient**: Oczekuje sprawności automatu 24/7 oraz szybkiej i bezproblemowej transakcji.
|
||||||
|
|
||||||
|
- **Właściciel**: Oczekuje, że automat będzie sprawny, oraz że w przypadku awwarii zostanie ona szybko usunięta, gdyż w przeciwnym wypadku nie będzie zarabiał ze sprzedaży w automacie. Oczekuje jeszcze zadowolenie klienta z powodu możliwości dokonania zakupu przez niego
|
||||||
|
|
||||||
|
**Warunki wstępne**:
|
||||||
|
Występuje pewna awaria w systemie informatycznym automatu spożywczego. Serwisant zna hasło do systemu automatu
|
||||||
|
|
||||||
|
...
|
||||||
|
|
||||||
|
**Warunki końcowe**:
|
||||||
|
Automat został naprawiony i jest zdany do użytku klientom. Potwierdzenie naprawy jest wysłane do centrali oraz właściciela automatu
|
||||||
|
|
||||||
|
...
|
||||||
|
|
||||||
|
**Scenariusz główny (ścieżka podstawowa)**:
|
||||||
|
---------------------------------------
|
||||||
|
|
||||||
|
1. Serwisant przy pomocy klucza otwiera automat
|
||||||
|
2. Serwisant podłącza swoje urządzenie (Laptop) do Płyty głównej automatu, oraz wpisuje wymagane hasło
|
||||||
|
3. Serwisant włącza narzędzie diagnostyczne w celu wygenerowania pliku błędów występujących na automacie, oraz ich wstępnej analizie
|
||||||
|
4. Serwisant analizuje błędy
|
||||||
|
5. Serwisant Naprawia automat
|
||||||
|
6. Po ukończonej naprawie Serwisant resetuje automat
|
||||||
|
7. Serwisant przeprowadza testową operację zakupu produktu z automatu
|
||||||
|
8. Serwisant raz jeszcze sprawdza Logi systemu, w celu upewnienia się że automat działa poprawnie, i wysyła je do centrali w raporcie z naprawy
|
||||||
|
9. Serwisant zamyka automat
|
||||||
|
|
||||||
|
|
||||||
|
**Rozszerzenia (ścieżki alternatywne):**
|
||||||
|
------------------------------------
|
||||||
|
|
||||||
|
*a. Laptop służący do naprawy się zawiesza
|
||||||
|
|
||||||
|
1. Serwisant resetuje system, loguje się, i żąda odtworzenia stanu przed zawieszeniem się systemu
|
||||||
|
|
||||||
|
1a. Laptop nie chce się zrestartować
|
||||||
|
|
||||||
|
1. Serwisant wysyła rapot o uszkodzonym laptopie i wraca do centrali
|
||||||
|
|
||||||
|
2. System odtwarza system przed zawieszeniem
|
||||||
|
|
||||||
|
2a. Odtworzenie stanu nie jest możliwe
|
||||||
|
|
||||||
|
1. Serwisant wraca do kroku 2 scenariusza głównego
|
||||||
|
|
||||||
|
|
||||||
|
2a. Płyta główna jest uszkodzona co uniemożliwia podłączenie i analizę błędów
|
||||||
|
|
||||||
|
1. Serwisant demontuje płytę główną
|
||||||
|
2. Serwisant wysyła raport, który zawiera zamówienie na nową płytę główną
|
||||||
|
|
||||||
|
|
||||||
|
3a. Mimo błędów w systemie narzędzie diagnostycznie nie wskazuje na żaden błąd
|
||||||
|
|
||||||
|
1. Serwisant sam analizuje wygenerowany plik z błędami
|
||||||
|
|
||||||
|
1a. Serwisant również nie jest w stanie odnaleźć błędu w systemie
|
||||||
|
|
||||||
|
1. Serwisant wysyła plik z analizą błędów do centrali
|
||||||
|
2. Serwisant wysyła prośbę o zabranie automatu do serwisu
|
||||||
|
3. Serwisant odłącza automat od prądu
|
||||||
|
|
||||||
|
1b. Serwisant odnajduje własnoręcznie błąd w pliku z błędami
|
||||||
|
|
||||||
|
1. Serwisant wysyła raport o odnalezieniu błędu do zespołu odpowiedzialnego za aplikację do analizy błędów
|
||||||
|
2. Serwisant wraca do punktu 5 scenariusza głównego
|
||||||
|
|
||||||
|
|
||||||
|
3b. System nie posiada błędów i działa w 100% poprawnie
|
||||||
|
|
||||||
|
1. Serwisant kontynuuje od 7 kroku scenariusza głównego
|
||||||
|
|
||||||
|
6a. Po restarcie automat wykazuje ten sam błąd co przed pojawieniem się serwisanta
|
||||||
|
|
||||||
|
1. Serwisant wysyła odpowiedni raport o dziwnym zachowaniu automatu
|
||||||
|
2. Serwisant wraca do punktu 2 scenariusza głównego
|
||||||
|
|
||||||
|
2a. Taki błąd wystąpił więcej niż 1 raz
|
||||||
|
1. Serwisant wysyła plik z analizą błędów do centrali
|
||||||
|
2. Serwisant wysyła prośbę o zabranie automatu do serwisu
|
||||||
|
3. Serwisant odłącza automat od prądu
|
||||||
|
|
||||||
|
7a. Automat nie może ukończyć testowej operacji zakupu
|
||||||
|
|
||||||
|
1. Serwisant wraca to punktu 2 scenariusza głównego
|
||||||
|
|
||||||
|
1a. Sytuacja ta powtarza się więcej niż 1 raz
|
||||||
|
|
||||||
|
1. Serwisant wysyła plik z analizą błędów do centrali
|
||||||
|
2. Serwisant wysyła prośbę o zabranie automatu do serwisu
|
||||||
|
3. Serwisant odłącza automat od prądu
|
||||||
|
|
||||||
|
8a. Podczas sprawdzania logów okazuje się, że w automacie nadal pojawiają się błędy
|
||||||
|
1. Serwisant wraca do kroku 5 scenariusza głównego
|
||||||
|
1a. Sytuacja się powtarza więcej niż 1 raz
|
||||||
|
1. Serwisant wysyła plik z analizą błędów do centrali
|
||||||
|
2. Serwisant wysyła prośbę o zabranie automatu do serwisu
|
||||||
|
3. Serwisant odłącza automat od prądu
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
**Wymagania specjalne**:
|
||||||
|
--------------------
|
||||||
|
|
||||||
|
- Wielojęzyczny interface narzędzia diagnostycznego
|
||||||
|
|
||||||
|
- Plik z przeanalizowanymi błędami w języku angielskim
|
||||||
|
|
||||||
|
**Wymagania technologiczne oraz ograniczenia na wprowadzane dane**:
|
||||||
|
---------------------------------------------------------------
|
||||||
|
|
||||||
|
2a. Laptop jest w stanie uruchomić narzędzie diagnostyczne, oraz umożliwić naprawę automatu
|
||||||
|
|
||||||
|
3a. Plik z analizą błędów zapisany jako semantyczna baza wiedzy w formacie .ttl
|
||||||
|
|
||||||
|
**Kwestie otwarte**:
|
||||||
|
----------------
|
||||||
|
- Czy serwisant będzie posiadał własny czy służbowy laptop
|
||||||
|
- Czy serwisant musi rozumieć język angielski w celu analizy błędów
|
110
use-case-9.md
Normal file
110
use-case-9.md
Normal file
@ -0,0 +1,110 @@
|
|||||||
|
|
||||||
|
Use Case 9: Automat- Generowanie raportu ze sprzedaży
|
||||||
|
=====================
|
||||||
|
|
||||||
|
**Aktor podstawowy: Zaopatrzeniowiec**
|
||||||
|
|
||||||
|
|
||||||
|
Główni odbiorcy i oczekiwania względem systemu:
|
||||||
|
-----------------------------------------------
|
||||||
|
- Dział zaopatrzeniowy: uzyskanie informacji, które produkty są najszybciej kupowane.
|
||||||
|
|
||||||
|
Warunki wstępne:
|
||||||
|
----------------
|
||||||
|
Zaopatrzeniowiec jest zalogwany do systemu.
|
||||||
|
|
||||||
|
Warunki końcowe:
|
||||||
|
----------------
|
||||||
|
Dział zaopatrezniowy otrzymał od automatu poprawnie wygenerownay raport sprzedazy.
|
||||||
|
|
||||||
|
Scenariusz główny (ścieżka podstawowa):
|
||||||
|
---------------------------------------
|
||||||
|
|
||||||
|
1. Zaopatrzenieowiec wybiera w systemie funkcję *Generowanie raportu sprzedży*.
|
||||||
|
2. Zaopatrezniowec wybiera produkt (jeden,kilka lub wszytkie), którego ten raport bedzie dotyczył i go/je akceptuje.
|
||||||
|
3. Zapatrezniowec akceptuje zamy czasowe raportu (data_od_kiedy, data_do_kiedy).
|
||||||
|
4. Autoamt generuje raport sprzedaży.
|
||||||
|
Raport zawiera:
|
||||||
|
- id_automatu
|
||||||
|
- id_produktu
|
||||||
|
- nazwa_produktu
|
||||||
|
- data_od_kiedy (domyślnie: od dnia ostatniego dołozenia produktu do autoamtu)
|
||||||
|
- data_do_kiedy (domyślnie: do dnia wybrania opcji (włącznie))
|
||||||
|
- liczby_zakupów_danego_produktu_w_jednym_dniu (w kazdym dniu)
|
||||||
|
- liczby_zakupów_danego_produktu_w_jednym_tygodniu (w kazdym tygodniu)
|
||||||
|
- liczba_zakupów_danego_produktu_w_całym okresie
|
||||||
|
- liczba_wszystkich_kupionych_produktów_w_jednym_dniu (w kazdym dniu)
|
||||||
|
- liczba_wszystkich_kupionych_produktów_w_tygodniu (w kazdym tygodniu)
|
||||||
|
- liczba_wszystkich_kupionych_produktów_w_całym_okresie
|
||||||
|
- stosunek_liczby_zakupów_danego_produktu_w_jednym_dniu_do_liczby_wszystkich_kupionych_produktów_w_jednym_dniu (w kazdym dniu)
|
||||||
|
- stosunek_liczby_zakupów_danego_produktu_w_jednym_tygodniu_do_liczby_wszystkich_kupionych_produktów_w_tygodniu (w kazdym tygodniu)
|
||||||
|
- stosunek_liczby_zakupów_danego_produktu_w_całym_okresie_do_liczby_wszystkich_kupionych_produktów_w_całym_okresie
|
||||||
|
5. Automat wysyła raport do działu zaopatrzeniowego.
|
||||||
|
|
||||||
|
Rozszerzenia (ścieżki alternatywne):
|
||||||
|
------------------------------------
|
||||||
|
|
||||||
|
*a. Brak prądu/ nagłe wyłączenie zasilania
|
||||||
|
1. Ponowane włączenie automatu
|
||||||
|
2. Automat przechodzi w tryb *Gotowy do działania*
|
||||||
|
3. Funkcje przerwane, nalezy rozpocząć od nowa
|
||||||
|
|
||||||
|
*b Resetowanie sytemu (uruchamianie ponowanie)
|
||||||
|
1. Automat przechodzi w tryb *Gotowy do działania*
|
||||||
|
2. Funkcje przerwane, nalezy rozpocząć od nowa
|
||||||
|
|
||||||
|
1a. Wybranie niewłaściwej funkcji
|
||||||
|
1. Zaopatrezniowec wybiera opcję cofnij
|
||||||
|
1a. Brak mozliwości przejścia do listy z dostepnymi funkcajmi
|
||||||
|
1. Po odczekaniu 15s, zaopatrzeniowiec resetuje system
|
||||||
|
2. Wybranie funkcji *Generowanie raportu sprzedazy*
|
||||||
|
|
||||||
|
2a. Zaopatrzeniowiec modyfikuje/zmienia wybrany/-e produkt/-y, którego/-ych będzie dotyczył raport
|
||||||
|
1. Zaopatrzeniowiec wybiera opcję *Zmień produkt/-y*
|
||||||
|
2. Automat wyświetla listę produktów
|
||||||
|
3. Zaopatrzeniowiec modyfikuje listę po przez kliknięcie na dany produkt
|
||||||
|
|
||||||
|
3a. Zaopatrzeniowiec modyfikuje ramy czasowe raportu (data_od_kiedy, data_do_kiedy)
|
||||||
|
1. Zaopatrzeniowiec wybiera opcję *Modyfikuj*
|
||||||
|
2. Zaopatrzeniowec wpisuje nowe ramy czasowe (recznie- z klawiatury)
|
||||||
|
|
||||||
|
4a. Błąd w generowaniu raportu
|
||||||
|
1. Automat wyświetla komunikat o błędym wykonaniu funkcji
|
||||||
|
2. Zaopatrzeniowiec wybiera opcję *Wyświetl szczegóły błędu*
|
||||||
|
3. Automat wyświetla szczegóły błędu
|
||||||
|
3a. Automat nie wyświetla szczegółów błędu
|
||||||
|
1. Powrót do kominikatu o błędzie
|
||||||
|
2. Zaopatrzeniowiec wybiera *Wyświetl szczegóły błędu*
|
||||||
|
3. System poprawnie wyświetlił szczegóły błędu
|
||||||
|
3a System nie wyświetlił szczegółów błędu - wyświetlił np. puste okienko
|
||||||
|
1. Ponownie uruchominie systemu w automacie
|
||||||
|
4. Powrót do menu głównego
|
||||||
|
5. Automat przechodzi w stan *Gotowy do uzytku*
|
||||||
|
|
||||||
|
5a. Niepowdzenie w wyłaniu raportu
|
||||||
|
1. Automaty wyświetla kominikat o niepowodzeniu wysłania raportu
|
||||||
|
2. Zapatrezniowiec wybiera opcję *Wyślij ponowanie*
|
||||||
|
3. Automata wysyła raport do działu zaopatrezniowego
|
||||||
|
3a. Automaty wyświetla kominikat o niepowodzeniu wysłania raportu
|
||||||
|
1. Ponownie uruchominie systemu w automacie
|
||||||
|
4. Powrót do menu głównego
|
||||||
|
5. Automat przechodzi w stan *Gotowy do uzytku*
|
||||||
|
|
||||||
|
|
||||||
|
Wymagania specjalne:
|
||||||
|
--------------------
|
||||||
|
- Raport jest generowny w języku polskim
|
||||||
|
|
||||||
|
- Po wybraniu produktu z listy, dany produkt zostaje podświetlony (jego tło zmienia kolor)
|
||||||
|
|
||||||
|
- W raporcie statystyki/liczby poszczególnych produktów, rozpoczynają się od nowe strony (by potem mozna było łatwo wydzielić statystyki poszczegónego produktu)
|
||||||
|
|
||||||
|
Wymagania technologiczne oraz ograniczenia na wprowadzane dane:
|
||||||
|
---------------------------------------------------------------
|
||||||
|
- Automat ma dostęp do internetu
|
||||||
|
|
||||||
|
|
||||||
|
Kwestie otwarte:
|
||||||
|
----------------
|
||||||
|
- Raport genrowany w języku obcym
|
||||||
|
|
65
use-cases.md
Normal file
65
use-cases.md
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
# **Projekt: Automat**
|
||||||
|
|
||||||
|
## Opis skrócony przypadków użycia
|
||||||
|
|
||||||
|
### Aktorzy procesu i ich cele:
|
||||||
|
| Aktor | Cel |
|
||||||
|
|----------------------|---------------------------------------------------------------------------------|
|
||||||
|
| Klient | zakup produktów |
|
||||||
|
| Zaopatrzeniowiec | uzupełnienie brakujących produktów (lub tych które się kończą) |
|
||||||
|
| Zaopatrzeniowiec | aktualizuje stanu maszyny (w tym gotówkę) |
|
||||||
|
| Serwisant | przeprowadzenie serwisu automatu |
|
||||||
|
| Serwisant | naprawa systemu w przypadku awarii |
|
||||||
|
| System płatniczy | realizacja transakcji gotówkowych i płatności kartą |
|
||||||
|
| Automat | maszyna wydająca posiłki i produkty |
|
||||||
|
| Dział zaopatrzeniowy | osoby odpowiedzialne za dostawę i zaopatrywanie automatu (w produkty i gotówkę) |
|
||||||
|
|
||||||
|
### Słownik:
|
||||||
|
| Hasło | Opis |
|
||||||
|
|---------------------------|---------------------------------------------------------------------------------|
|
||||||
|
| Stan magazynowy | ilość produktów danego typu w maszynie |
|
||||||
|
| Minimalny stan magazynowy | ilość produktu danego typu, przy której maszyna wysyła informację o konieczności jej uzupełnienia |
|
||||||
|
| Gotowy produkt | Produkt niewymagający przygotowania, np. Baton, napój w puszcze |
|
||||||
|
| Przygotowany produkt | Produkt wymagający wcześniejszego przygotowania np. Obróbki termicznej: ciepła bułka lub zalania wrzątkiem: kawa, herbata |
|
||||||
|
| Terminal | urządzenie umożliwiające płacenie kartą wyłącznie zbliżeniowo |
|
||||||
|
| Serwisant | odpowiedzialna za utrzymanie poprawnego działania automatu, wsparcie techniczne |
|
||||||
|
|
||||||
|
### UseCases:
|
||||||
|
|
||||||
|
**Use Case 1: Automat - Wysłanie komunikatu o stanie magazynowym produktów**
|
||||||
|
Dział zaopatrzeniowy wysyła prośbę o raport stanu magazynowego wszystkich produktów do maszyny o odpowiednim ID. Automat sprawdza stan wszystkich produktów. Automat wysyła raport stanu do działu zaopatrzenia (ilość każdego z produktów).
|
||||||
|
|
||||||
|
**Use Case 2: Klient - zakup produktu**
|
||||||
|
Klient wprowadza dostępny numer produktu. Automat wyświetla konieczną do zapłacenia kwotę. Klient dokonuje płatności(patrz UC 3 lub UC4). Automat przygotowuje i wydaje produkt. Automat sprawdza stan magazynowy zakupionego produktu. Jeśli, stan magazynowy tego produktu jest równy minimalnemu stanowi magazynowemu, automat poprzez sieć internetową wysyła informację do działu zaopatrzenia ze swoim ID i ID produktu.
|
||||||
|
|
||||||
|
**Use Case 3: Automat - płatność gotówką**
|
||||||
|
Klient wrzuca monety lub podaje banknoty. Automat sumuje pieniądze i wyświetla pozostałą wartość w czasie rzeczywistym. Jeśli wartość zamówienia zostanie osiągnięta, automat akceptuje płatność. Nadwyżka salda oznacza wydanie reszty. Jeżeli stan któregoś z nominałów jest mniejszy od minimalnego, automat wysyła informację do działu zaopatrzenia ze swoim ID, nominałem i jego ilością.
|
||||||
|
|
||||||
|
**Use Case 4: Automat - płatność kartą**
|
||||||
|
Klient wybiera płatność kartą. Automat uruchamia terminal. Terminal łączy się z serwisem płatniczym. Automat wyświetla wartość zamówienia na terminalu. Klient dokonuje płatności kartą. Automat wysyła dane potrzebne do przelewu. Automat przetwarza informacje zwrotną. Automat akceptuje transakcje.
|
||||||
|
|
||||||
|
**Use Case 5: Serwisant - Przeprowadzenie serwisu automatu - “diagnostyka automatu”**
|
||||||
|
Serwisant, przy pomocy dedykowanego systemu uruchamia opcję “diagnostyka automatu”. Automat zmienia swój stan z “gotowy do użytku” na “tryb diagnostyczny”. Automat przeprowadza przygotowaną procedurę diagnozy. Automat generuje raport i wysyła go do działu serwisu. Automat zmienia swój stan na “gotowy do użytku”.
|
||||||
|
|
||||||
|
**Use Case 6: Zaopatrzeniowiec – Dodanie pieniędzy do automatu**
|
||||||
|
Zaopatrzeniowiec wybiera w systemie opcję “Dodanie pieniędzy”. Zaopatrzeniowiec dodaje monety do poszczególnych przegródek na odpowiednie nominały. Zaopatrzeniowiec włącza funkcję “przeliczenia pieniędzy”. Automat przelicza monety i banknoty oraz wysyła informację do działu zaopatrzeniowego o nowym stanie kasetki. Zaopatrzeniowiec wyłącza funkcję dodawania pieniędzy i przełącza automat w tryb “gotowy do użytku”.
|
||||||
|
|
||||||
|
**Use Case 7: Zaopatrzeniowiec – Dodanie towaru do automatu**
|
||||||
|
Zaopatrzeniowiec uzupełnia brakujący towar w automacie. Po uzupełnieniu wybiera w systemie opcję “Uzupełniono towar”. Następnie system czujników w automacie sprawdza nowy stan poszczególnych produktów i wysyła odpowiedni raport do działu zaopatrzeniowego. Automat przechodzi w stan gotowości do zamknięcia. Po zamknięciu automat przechodzi w tryb “gotowy do użytku”.
|
||||||
|
|
||||||
|
**Use Case 8: Serwisant – Naprawa automatu w przypadku awarii systemu**
|
||||||
|
Serwisant wyłącza automat. Następnie pobiera logi systemowe z automatu w celu ich analizy (znalezienia błędu). Po analizie serwisant podpina się do systemu i przełącza go w stan naprawy. Po naprawie serwisant przeprowadza scenariusz zakupu (patrz UC2) a następnie gdy przeszedł on testy to przełącza go w stan gotowości do działania.
|
||||||
|
|
||||||
|
**Use Case 9 Automat- Generowanie raportu ze sprzedaży**
|
||||||
|
Po wybraniu funkcji “Raport sprzedaży” automat generuje raport, w którym znajdują się informacje kiedy dany produkt został wykupiony i po jakim czasie od ostatniego uzupełninia towaru. Raport po wygenerowaniu zostanie wysłany na działu zaopatrzeniowego.
|
||||||
|
|
||||||
|
**Use Case 10 Zaopatrzeniowiec - Pobranie pieniędzy z automatu**
|
||||||
|
Zaopatrzeniowiec przełącza automat w stan pobrania pieniędzy. Czujniki w kasetce przeliczają ilość pieniędzy do wydania i następnie generują raport i wysyłają go do działu zaopatrzeniowego i właściciela automatu. Zaopatrzeniowiec pobiera pieniądze. Zaopatrzeniowiec wyłącza funkcję pobierania pieniędzy i przełącza automat w tryb “gotowy do użytku”.
|
||||||
|
|
||||||
|
**Use Case 11 Automat - Awaryjne wyłączenie się automatu**
|
||||||
|
Automat jest odporny na pojawienie się błędów systemowych podczas działania. W przypadku natrafienia na jeden z nich, automat nie wyłącza się. Zostaje automatycznie pobierany raport błędu, a szczegółowe dane w nim zawarte zostają przesłane do specjalnego systemu powiadomień serwisanta.
|
||||||
|
|
||||||
|
**Use Case 12 Automat - Alarm przy próbie włamania**
|
||||||
|
Automat za pomocą specjalnego czujnika wykrywa nieautoryzowane otwarcie. Oznacza to próbę włamania. Automat włącza alarm dźwiękowy oraz wysyła powiadomienie z dokładnym czasem oraz identyfikatorem maszyny. Serwisant otrzymuje powiadomienie w specjalnym systemie i jest w stanie wyłączyć alarm dźwiękowy zdalnie.
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user