Minule jsme si udělali teoretický základ a nyní nastal čas se pustit již do samotné tvorby. Jelikož se jedná o zjednodušený model, v tomto případě se nebudeme pouštět do vytváření procesních diagramů, databázových struktur a dalších věcí které se standardně dějí při návrhu nového sw.
Zjednodušený návrh
Proč vůbec obec potřebuje tuto aplikaci?
Poskytnout obyvatelům a návštěvníkům obce přehledný mapový portál s prostorovými informacemi o obci a umožnit obci tyto informace spravovat.
Jaké problémy obec řeší?
- data jsou roztříštěná (PDF, obrázky, papíry)
- neexistuje jednotné místo s mapou
- obec nemá jednoduchý nástroj na aktualizaci
- obec nemá systém pro hlášení závad
Kdo budou uživatelé a jaká mají zájem?
| Stakeholder | Zájem |
|---|---|
| Občané | rychlý přehled informací, hlášení závad |
| Návštěvníci | orientace v obci |
| Úředník obce | správa dat |
| Administrátor | technická správa systému |
Uživatelské role
V celém systému budou existovat tři základní uživatelské role
| Role | Funkce | Přihlášení |
| Návštěvník | zobrazení mapy, hlášení závad, detail vrstev | ne |
| Editor | přidávání bodů a linií, úprava popisů, administrace závad | ano |
| Administrátor | přidělování uživatelských rolí, technická údržba | ano |
Funkční požadavky
Funkční požadavky si rozdělíme do několika skupin:
Základní funkce mapy
| ID | název | Popis | role | Požadavky | Výstup |
| FR-01 | zobrazení mapy | Uživatel otevře mapové okno, může zoomovat, | Všechny | Internetové připojení | Interaktivní mapa s vrstvami |
| FR-02 | Detail vrstvy | Uživatel klikne na bod-linii, otevře se detail s textem a fotkou | všechny | Prvek na mapě | Pop-up s detailem |
| FR-03 | Vyhledání adresy | Uživatel zadá do vyhledávacího pole adresu a mapa se přiblíží na místo | všechny | Funkční geokodovací služba, | Vyhledaná adresa, přiblížení na místo |
| FR-04 | Hlášení závad | Uživatel klikne do mapy, vybere typ závady (např. nesvítící lampa) a odešle. | Návštěvník / Občan | Záznam v databázi, ikona v mapě | |
| FR-05 | Editor dat | Přidávání nových bodů zájmu, kreslení linií a úprava existujících popisků. | Editor/admin | Editační formulář v mapě | |
| FR-06 | Správa uživatelů | Možnost měnit role uživatelů a spravovat přístupy do systému. | Administrátor | Administrační rozhraní (tabulka) |
Vývoj v lokálním prostředí
Pro práci v domácím prostředí si zapneme xamp (Apache a MySQL). Dále budeme využívat Visual Studio Code ve kterém budeme editovat kód a průběžně budeme vývoj této aplikace nahrávat na GitHub.
Záměrně jsem nepsal „psát kód“, tuto aplikaci si uděláme tak jak je dnes trendy a to pomocí Vibecodingu. Ke generování kódu použijeme volně dostupný model Gemini 3
„Než ale do Gemini pošleme první příkaz, musíme mít jasno v tom, jak spolu budou jednotlivé díly komunikovat. Naším cílem není napsat tisíc řádků kódu, ale správně kormidlovat AI model tak, aby vytvořil modulární a udržitelný systém.
V příští kapitole už otevřeme VS Code a zkusíme první ‚výstřel‘ – zobrazení základní mapy s podkladem OpenStreetMap.„