Barový systém Stručný popis: Systém pro bary, který spočívá v jednoduchém objednání nápoje/zákusku zákazníkem a stejně jednoduché vyřízení objednávky barmanem/obsluhou. Mimo urychlení procesu poskytuje i jiné funkce, na které v obyčejných barech není dostatek času či lidí. Systém dělá zábavu jednoduší. Funkce systému: - Na straně zákazníka o Možnost prohlížení nabídky nealko/alko nápojů, drinků a zákusků. o Možnost objednání jednoho nebo více produktů z výčtu výše. o Stálé zobrazování útraty. o Možnost uzavřít objednávky a elektronicky požádat o účtenku. Možnost placení: cash, paypal, paysec, kreditní kartou o U drinků možnost zobrazení ingrediencí, z kterých jsou připravovány a vyhledání jiného drinku s oblíbenou ingrediencí. o Možnost stanovení finančního limitu, po jehož dosažení bude nabídnuto pokračování v objednávání nebo ukončení objednávání. o Možnost zaplatit předem (příklad: oslava narozenin) určitý finanční obnos, který bude zadán jako limit. o Celý systém bude česky, anglicky i německy; včetně příslušných měn. o Možnost udělit feedback na barmana/obsluhu. - Na straně barmana/obsluhy o Sledování objednávek z jednotlivých stolů v reálném čase. o Možnost zpracovat objednávku a poté označit jako zpracovanou. o Sledování útraty jednotlivých zákazníků i celého podniku v reálném čase. o Možnost vystavovat účtenky jednoduchým uzavřením účtu stolu. o Možnost nastavit finanční limity/zablokovat jednotlivé stoly. o Možnost prohlížení, editování a mazání stavu skladu zboží. o Automatické účtování po každém ukončeném pracovním dnu. o Prohlížení udělených feedbacků. SW implementace: Celý systém bude napsán v jazyce Java. Jedna PC verze pro počítač u baru pro barmany nebo obsluhu (hlavní systém) a druhá verze v tabletu či mobilním telefonu s operačním systémem Android na každém stolu v baru. (stůl = zákazník).
Všechny nabízené produkty, objednávky, seznam zboží na skladě atd. bude obhospodařovat databáze. Spojení mezi hlavním systémem a jednotlivými stoly bude pomocí komunikačního protokolu TCP. Potřebné vybavení: Pro potřeby projektu bude potřeba jeden stolní počítač pro hlavní systém u baru. Dále se bar musí vybavit tablety či mobilními telefony se systémem Android na každý stůl v baru jeden telefon. Pro databázi se může použít vzdálený server či koupit jeden server přímo do baru. Diagram tříd: Funkční požadavky: - Zákazník o Procházení nabídky v rámci čehož může dojít k objednání nebo zaplacení. Zaplacení přivolá obsluhu ihned, objednání až po vyřízení objednávky. o Může udělit feedback k personálu, který zákazníka obsluhuje - Barman
o Může procházet aktuální objednávky a otevřené účty o Obsluhuje zákazníka vyřizuje platbu/dodává drink o Prohlíží seznamy dostupného zboží editace/přidání/odebrání zboží o Může prohlížet udělené feedbacky Nefunkční požadavky: - Bude fungovat na tabletech a mobilních zařízeních používající systém Android 2.0 a vyšší - Všechny použité programy a podpůrný software bude opensource - Hlavní aplikace bude multiplatformní, realizovaná v prostředí Java - Na analýzu a návrh bude používán nástroj Enterprise Architect verze 8
Diagram případů užití:
Scénáře užití: Brief: Udělit feedback na obsluhu Umožňuje zákazníkovi napsat posudek na obsluhu, která se o něj celý večer starala. Posudek může být negativní i pozitivní, to záleží jen na zákazníkovi. Posudek se uloží do databáze pod jedinečným číslem obsluhy, kde si ho poté může obsluha vyzvednout. Fully-dressed: Udělit feedback na obsluhu USE CASE Udělit feedback na obsluhu Barový systém - zákaznické rozhraní - Zákazník osoba, která je v baru obsluhována - Zákazník je v režimu objednávání (je k jeho stolu přidělena obsluha) - Zákazník odeslal feedback 1, Případ začíná, když se zákazník rozhodne udělit feedback. 2, Zákazník vybere na svém tabletu v systému bar možnost udělit feedback 3, K danému stolu je přímo přiřazená daná obsluha, takže zákazník pouze napíše svůj komentář a vybere odeslat. Alternativní scénář: 3, Zákazník se rozhodne během udělování feedbacku tuto akci zrušit pomocí tlačítka storno. Brief: Objednání drinku Umožňuje zákazníkovi vybrat si ze seznamu alkoholických, nealkoholických nápojů či jídelní nabídky. Může si vybrat i více produktů najednou, či jeden produkt vícekrát. Poté co navolí svou objednávku, zvolí odeslat. Objednávka se uloží do databáze a zobrazí se obsluze u baru. Fully-dressed: Objednání drinku USE CASE Objednání drinku Barový systém - zákaznické rozhraní
- Zákazník osoba, která je v baru obsluhována - Zákazník je v režimu objednávání (je k jeho stolu přidělena obsluha) - Zákazník odeslal objednávku 1, Případ začíná, když se zákazník rozhodne vybrat si nějaký produkt z nabídky. 2, EXTEND (Objednávání) 3, Systém se zákazníka zeptá, které menu nabídky si chce zvolit (alko, nealko, jídlo) 4, Zákazník si zvolí produkty, které si chce objednat a svou objednávku odešle. 5, INCLUDE (Přivolání obsluhy) 6, Poté co obsluha objednávku zpracuje, přinese objednané produkty ke stolu. Alternativní scénář: Brief: Placení 4, Zákazník může svůj dosavadní výběr zrušit pomocí tlačítka storno. Je povinností zákazníka vybrat tuto funkci před odchodem z baru. Po zvolení placení se přivolá obsluha, která přinese účet a zákazník zaplatí za produkty, které si objednal. Po zvolení této možnosti se zákazníkovy uzavře vstup do nabídky, aby si již do daného účtu nemohl objednat nic dalšího. Fully-dressed: Placení USE CASE Placení Barový systém - zákaznické rozhraní - Zákazník osoba, která je v baru obsluhována - Zákazník je v režimu objednávání (je k jeho stolu přidělena obsluha) - Zákazník ukončil objednávání a zaplatil
1, EXTEND (Objednávání) 2, Zákazník se rozhodne ukončit objednávání a zvolí možnost zaplatit. 3, Jeho účet se mu uzavře a ukáže mu konečnou částku k placení. 4, INCLUDE (Přivolání obsluhy) 5, Poté co obsluha zpracuje účet zákazníka, přinese tento účet k zákazníkovi a ten zaplatí danou částku. Alternativní scénář: 2, Zákazník se rozhodne přerušit akci a pokračovat v objednávání. Brief: Procházení aktuálních objednávek a účtů Barman má možnost vidět aktuální objednávky a jejich cenu. Může v nich volně listovat, ověřovat vyřízené a nevyřízené objednávky, pokud by snad vznikla rozepře se zákazníkem. Také má možnost aktuálně vidět celkovou cenu všech objednávek daného stolu. Fully-dressed: Procházení aktuálních objednávek a účtů USE CASE Procházení aktuálních objednávek a účtů Barový systém rozhraní pro obsluhu - Obsluha osoba, která je v baru obsluhuje - Barman osoba, která míchá drinky - Obsluha nebo barman je přihlášen do systému - Obsluha nebo barman má přehled o aktuálních požadavcích zákazníků 1, Barman prochází seznam objednávek za účelem zjištění, zda jsou všechny zpracované správně Alternativní scénář: 1, Barman prochází seznam účtů, zda součty za jednotlivé objednávky sedí nebo za účelem zjištění zda daný stůl zaplatil či ne. Brief: Dodání drinku
Barman má povinnost dodat zákazníkovy produkty dle jeho objednávky, kterou vidí v procházení aktuálních objednávek. Po zaregistrování objednávky ji musí připravit, dodat k danému stolu a poté označit objednávku jako zpracovanou, čímž se přičte k celkovému účtu zákazníka. Fully-dressed: Dodání drinku USE CASE Dodání drinku Barový systém rozhraní pro obsluhu - Obsluha osoba, která je v baru obsluhuje - Barman osoba, která míchá drinky - Obsluha nebo barman je přihlášen do systému - Obsluha dodá drink na stůl, který si ho objednal 1, Zákazník zadá objednávku 2, Barman uvidí objednávku na svém PC a připraví ji. 3, INCLUDE (Obsluha zákazníka) 4, Barman má povinnost donést objednávku na stůl zákazníka 5, Poté označí objednávku jako zpracovanou Brief: Vyřízení platby Je v nejlepším zájmu barmana zpracovat účet a donést ho k zákazníkovi, pokud o to zákazník zažádá pomocí volby placení. Barman uvidí požadavek k placení na svém PC, a postará se o to aby byl účet vyměněn za daný finanční obnos. Fully-dressed: Vyřízení platby USE CASE Vyřízení platby Barový systém rozhraní pro obsluhu - Obsluha osoba, která je v baru obsluhuje - Barman osoba, která míchá drinky
- Obsluha nebo barman je přihlášen do systému - Obsluha převzala peníze od zákazníka a vložila je do kasy 1, Zákazník zadá placení 2, Barman uvidí požadavek k zaplacení na svém PC a zpracuje účet. 3, INCLUDE (Obsluha zákazníka) 4, Barman donese účet k zákazníkovi a ten mu ho proplatí 5, Barman uloží peníze do kasy a označí stůl za zpracovaný. Brief: Editovat zboží Umožňuje barmanovi procházet seznam zboží a při zjištění že je u nějakého zboží špatně uveden celkový počet zboží na skladě nebo špatně jeho cena, tak má možnost tyto údaje změnit. Fully-dressed: Editovat zboží USE CASE Editovat zboží Barový systém rozhraní pro obsluhu - Obsluha osoba, která je v baru obsluhuje - Barman osoba, která míchá drinky - Obsluha nebo barman je přihlášen do systému - Obsluha nebo barman změnili data o zboží na skladě 1, INCLUDE (Procházet seznam zboží) 2, Barman zjistí při procházení zboží nějakou nesrovnalost 3, Opraví ji a uloží záznam o daném zboží znova. Alternativní scénář: 3, Barman udělá při editaci chybu a upravování záznamu pomocí tlačítka storno zruší.
Brief: Přidat zboží Umožňuje barmanovi procházet seznam zboží a přidávat do něj nové záznamy o novém zboží, které bylo dovezeno na sklad Fully-dressed: Přidat zboží USE CASE Přidat zboží Barový systém rozhraní pro obsluhu - Obsluha osoba, která je v baru obsluhuje - Barman osoba, která míchá drinky - Obsluha nebo barman je přihlášen do systému - Obsluha nebo barman přidali data o zboží na skladě 1, Barman chce přidat nové zboží do databáze zboží na skladě 2, INCLUDE (Procházet seznam zboží) 3, Barman zvolí možnost přidat zboží 4, Vyplní formulář o daném zboží (počet, objem, cenu, druh) a uloží do databáze. Alternativní scénář: 4, Barman se rozhodne přidávání přerušit a pomocí tlačítka storno tak učiní. Brief: Odebrat zboží Umožňuje barmanovi procházet seznam zboží a odebírat z něj zboží, které se již spotřebovalo při přípravě objednávek zákazníku. Fully-dressed: Odebrat zboží USE CASE Odebrat zboží Barový systém rozhraní pro obsluhu - Obsluha osoba, která je v baru obsluhuje - Barman osoba, která míchá drinky
- Obsluha nebo barman je přihlášen do systému - Obsluha nebo barman smazali data o zboží na skladě 1, Barman chce odebrat spotřebované zboží z databáze zboží na skladě 2, INCLUDE (Procházet seznam zboží) 3, Barman vybere spotřebované zboží a zvolí odebrat. 4, Otevře se mu formulář, kde vyplní čas spotřebování a uloží zboží jako zpracované. Alternativní scénář: 4, Barman se rozhodne odebírání přerušit a pomocí tlačítka storno tak učiní. Brief: Prohlížení udělených feedbacků Barman má možnost prohlížet si komentáře, které k jeho osobě zákazník udělil. Možnosti úpravy nebo mazání zde nejsou povoleny. Fully-dressed: Prohlížení udělených feedbacků USE CASE Prohlížení udělených feedbacků Barový systém rozhraní pro obsluhu - Obsluha osoba, která je v baru obsluhuje - Barman osoba, která míchá drinky - Obsluha nebo barman je přihlášen do systému - Obsluha nebo barman zjistil informace, které pro něj zanechali zákazníci 1, Barman se rozhodne prohlížet si komentáře udělené jeho osobě. 2, Databáze mu vrátí všechny komentáře, které má k jeho osobě.
Diagram aktivit: BPMN BPMN «Pool» Zákaznik «Pool» Barman Start Zapnout Program Vytvořit Objednávku Zpracovat Objednávku Odeslat Objednávku Potvrdit Hotovou Objednávku Zaplatit Objednávku Odeslat Cenu Konec Revize 1 (po 4. týdnu práce na projektu): Na základě konzultace se zákazníkem bylo na úkor rozpočtu upuštěno od následujících funkcí barového systému (červeně označené). - Na straně zákazníka o Možnost uzavřít objednávky a elektronicky požádat o účtenku. Možnost placení: paypal, paysec, kreditní kartou
o U drinků možnost zobrazení ingrediencí, z kterých jsou připravovány a vyhledání jiného drinku s oblíbenou ingrediencí. o Možnost stanovení finančního limitu, po jehož dosažení bude nabídnuto pokračování v objednávání nebo ukončení objednávání. o Možnost zaplatit předem (příklad: oslava narozenin) určitý finanční obnos, který bude zadán jako limit. o Celý systém bude česky, anglicky i německy; včetně příslušných měn. - Na straně barmana/obsluhy o Možnost nastavit finanční limity/zablokovat jednotlivé stoly. o Automatické účtování po každém ukončeném pracovním dnu. Dále bylo ustanoveno začáteční testování systému na jedno zařízení PC a na jednom mobilním telefonu se systémem Android. Pro komunikační protokol TCP je aktuálně jednáno o nahrazení protokolem vyšší vrstvy. Stavový diagram zákazníka: stm State Prichod zakaznika do baru Zpristupneni nabidky [Ano] Objednani Vybral si zakaznik? [Ne] Zakaznik odchazi Zakaznik je obslouzen [Ano] [Ne] Bude zakaznik pokracovat? Zakaznik plati a odchazi [Ne] Zakaznik bude platit Obsluha prinasi ucet [Ano] Zakaznik udeluje feedback Bude zakaznik udelovat feedback? Zakaznik plati a odchazi
Stavový diagram obsluhy: stm Obsluha Obsluha zapina pocitac Prihlaseni do systemu Pridat zbozi Obsluha zakazniku Sprav ov ani zbozi na sklade Editov at zbozi Sledov ani objednav ek a pozadav ku [Ano] Odebrat zbozi Pokracovat ve spravovani zbozi? [Ukoncit veskerou cinnost] [Prepnout do rezimu obsluhy] Vypnout system Vyrizeni objednavky Vyrizeni platby Precteni feedbacku [Ano] Pokracovat ve sledovani objednavek? [Prepnout do rezimu spravovani zbozi] [Ukoncit veskerou cinnost] Vypnout system