1) Životni ciklus TestAttempt-a sa autosave i vremenskim prozorom za predaju Modelujte ciklus jednog objekta “TestAttempt” u online ispitnom sistemu. Novi pokušaj počinje u stanju u kome su pitanja vidljiva, ali rad još nije predat. Dok je u “radnom” stanju, autosave se može ponavljati više puta bez napuštanja tog stanja, a preostalo vreme odbrojava. Ako student preda pre isteka vremena, pokušaj prelazi u stanje “Submitted” i postaje nepromenljiv. Ako vreme istekne, pokušaj se automatski predaje. Dozvolite privremenu pauzu (npr. kratki gubitak konekcije) i kasniji nastavak, uz povratak na prethodno mesto. Uključite vremensko ponašanje za odbrojavanje i jasno naznačite koje su radnje dozvoljene u svakom stanju. 2) Pametna brava (DoorController) sa lock, alarm i maintenance režimom Modelujte jedan uređaj “DoorController”. Po startu je zaključan (locked) po difoltu. Kada se predstavi važeća akreditacija, otključava se na kratko, podešeno trajanje, a zatim se automatski ponovo zaključava osim ako je uključen maintenance režim. Nevažeći pokušaji otvaranja pokreću alarm dok se ne izvrši reset. Uređaj se može prebaciti u maintenance stanje gde vrata ostaju otključana i alarmi se ne aktiviraju; izlazak iz maintenance vraća normalno zaključano ponašanje. Prikažite entry/exit ponašanja (npr. LED indikatore), vremenski uslov za ponovno zaključavanje, i način na koji se alarm aktivira i gasi. Upotrebite guard uslove za razlikovanje važećih i nevažećih akreditacija. 3) Isporuka porudžbine sa podsistemom “Shipping” i istorijom (history) Modelujte jedan objekat “Order”. Počinje kao kreiran, zatim postaje plaćen, pa spakovan, a potom ulazi u kompozitno stanje “Shipping” sa sopstvenim podstanjima (npr. handover → in-transit → out-for-delivery → delivered). Ako porudžbina napusti kompozit “Shipping” pre završetka (npr. privremeni hold zbog korekcije adrese) i kasnije se ponovo vrati u “Shipping”, treba da nastavi iz poslednjeg aktivnog podstanja (koristite history). Uključite granu za otkazivanje pre slanja (terminalno “Cancelled”) i vremenski uslov za auto-otkaz ako uplata ne stigne u predviđenom roku. Jasno označite koje tranzicije pokreću događaji (uplata, štampa nalepnice, carrier scan, dostava), a koje su vremenski vođene.