DNUR semestrální projekt Nákupní seznam Bc. Michal Macháček ČVUT FEL Praha, ZS 2013 machamic@fel.cvut.cz Obsah D1...1 Uživatelský průzkum...1 Základní popis aplikace...1 Typický uživatel...1 Interview...1 Návrh aplikace...2 Architektura...2 Funkcionalita...2 D2...3 Use Cases...3 Role uživatelů...3 Scénáře...3 HTA...4 Mockup...5 D1 Seznamit se s problematikou navrhu vybrane aplikace a provest uzivatelsky pruzkum formou semistrukturovaneho interview, ktery odhali pozadavky realnych uzivatelu na vami navrhovany system, tj. co jim chybi a jake jsou jejich problemy ve vztahu k systemu. Sepsat seznam problemu a inicialni navrh reseni. Uživatelský průzkum Základní popis aplikace Cílem je vytvořit systém pro tvorbu a správu nákupních seznamů. Systém by měl usnadnit proces tvorby nákupního seznamu více uživatelúm z různých míst. Klíčová funkce je aby kdokoliv, odkudkoliv a kdykoliv si zrovna vzpomene, mohl do seznamu přidávat potřebné položky a zobrazit si aktuální seznam. To umožní organizaci nákupu nebo jeho částí tak, aby kdokoliv mohl např. cestou ze školy kolem pekárny koupit pečivo nebo cestou autem z práce udělat celý nákup.aplikace bude průběžně zobrazovat aktuální součet ceny nákupu. Bude možné prohlížet si i minulé nákupy, např. za účelem hledání úspor v rodinném rozpočtu. Typický uživatel Rodina (nebo podobná skupina lidí obývající jedno místo) plánující např. během týdne velký hromadný víkendový nákup. Typicky v situaci, kdy není spolu. Například žena doma, manžel v práci, syn ve škole atd. Interview P projektant aplikace U uživatel (vybrána žena z rodiny vzhledem k tomu, že největší podíl položek budou potraviny a domácí potřeby, které bude právě ona vybírat)
P: Jakým způsobem jsou u vás v rodině organizovány nákupy? U: Primárně nakupujeme o víkendu velkou většinu zboží na další týden. Průběžně děláme pouze drobné nákupy, např. pečivo, čerstvou zeleninu. Seznam sepisuji na papírek, ostatní hlásí co potřebují těsně před nákupem. P: Jaké jsou nedostatky tohoto řešení? U: Hodně věcí zapomeneme. Dále, kdyz mam doma na papírku seznam a manžel jede z práce, nejde mu ho jednoduse poslat. P: Kdo fyzicky provádí nákupy? U: De facto všichni. Manžel dělá velké víkendové nákupy, já nebo syn ty drobné. P: Může nastat např. že někdo koupí odpoledne pečivo a druhý o tom neví a koupí ho také? U: Ano, občas se to stane, když si nezavoláme a nedomluvíme se. Kdyby aplikace uměla označit že část seznamu už je koupená, bylo by to dobré. P: Chodíte do jednoho supermarketu nebo do více menších obchodů? U: Většinu kupujeme v supermarketu, ale např. maso vždu jen u řezníka. Bylo by užitečné mít seznam zobrazitelný v kategoriích. A nemusí to být jen podle obchodu, dobré by bylo mít i kategorie podle oddělení v supermarketu, abychom měli věci z jednoho místa při sobě. P: Sortiment nakupovaného zboží máte pořád přibližně stejný? U: Každý nákup je jiný, ale velká část zboží se víceméně pořád opakuje. P: Máte všichni dostupné internetové připojení? U: V tom problém není, doma i v práci máme online počítač, navíc máme telefony s datovým tarifem. Není problém přistupovat odkudkoliv, včetně přístupu rovnou v obchodě. Návrh aplikace Architektura Vzhledem k více uživatelům na různých místech bude aplikace realizována jako online webová aplikace. Rozhraní by mělo být přizpůsobené zobrazení na mobilním zařízení. Uložiště dat na serveru bude jednoduchá databáze. Přistupovat k nim se bude pomocí php skriptů. Uživatelské rozhraní bude XHTML a v maximální možné míře se bude používat JavaScriptové volání serverových procedur. Funkcionalita Aplikace bude obsahovat katalog nejčastěji kupovaného zboží. Položky budou rozděleny do kategorií (např. ovce a zelenina, maso, mléčné výrobky apod.). Každá položka v katalogu bude mít uloženou svoji obvyklou jednotkovou cenu. Položky i kategorie půjde přidávat, měnit i rušit. Aplikace bude umožňovat vedení více seznamů a výběr aktuálního seznamu. Bude možné založit nový seznam nebo zrušit starý. Do samotného seznamu bude možné připisovat zboží z katalogu položek a nastavit jeho množství. Položky půjdou rušit a půjde upravovat množství. Položky půjdou označit jako již koupené.
D2 Vytvoreni konkretnich use-case a scenaru, vytvorit model systemu a papirovy mockup systemu, ktery bude neformalne otestovan (tj. nemusi byt otestovanim cilovou skupinou) Use Cases UC1 UC2a UC2b Vybrat a zobrazit aktuální seznam Vytvořit nový seznam Smazat vybraný seznam UC3 UC4a UC4b UC4c UC5 UC6 UC7 Zobrazit vybranou kategorii z katalogu zboží Přidat novou kategorii zboží Upravit název kategorie zboží Smazat kategorii zboží Přidat nové zboží do kategorie Smazat zboží z kategorie Upravit cenu zboží v kategorii UC8 UC9 UC10 Připsat určitý počet jednotek zboží do aktuálního seznamu Upravit počet jednotek zboží do aktuálního seznamu Vyjmout zboží z aktuálního seznamu UC11 UC12 UC13 Prohlížení seznamu podle kategorií Zjistit celkovou aktuální cenu nákupu Označit položku v seznamu jako již zakoupenou Role uživatelů Připisovatel (do seznamu) Nakupující Scénáře SC1 Uživatel Připisovatel chce umístit konkrétní zboží z katalogu do seznamu (Plan 0). Pokud seznam ještě neexistuje, vytvoří nový (UC1, UC2a) (Plan 1). Zobrazí si danou kategorii zboží (UC3). Pokud taková kategorie neexistuje, vytvoří ji (UC4a). Najde v kategorii požadované zboží. Pokud nenajde, vytvoří ho (UC5) (Plan 2). U požadovaného zboží nastaví počet jednotek a přidá jej do seznamu (UC8). V seznamu zboží přibude ve své kategorii a jeho cena se promítne do celkového součtu cen v seznamu (UC11, UC12). SC2 Uživatel Nakupující přijde do obchodu. Otevře si aktuální seznam (UC1). Prochází v obchodě jednotlivými odděleními. Těmto oddělením odpovídají kategorie v seznamu, takže přehledně vidí co zde má koupit a koupí to hned najednou (UC11). Může koupené zboží hned označit jako již zakoupené, aby se ještě více zpřehlednil výpis a nekoupil jej někdo jiný znovu(uc13) (Plan 0).
HTA Oba popsané scénáře jsou rozkresleny do hierarchického task-analysis stromu
Mockup