Jak probíhá spolupráce při vývoji SW produktu?

Před zahájením projektu … bude to složité?

Na začátku naší spolupráce, dojde k úvodní konzultaci, kde probereme vaši představu o naplnění cílů projektu, resp. SW, který budete potřebovat. Naši kolegové se Vás budou ptát o záměru, procesech, dotčených částí Vaše společnosti, potřebách apod. Podle toho vám navrhneme způsob vývoje SW v rámci projektu podle vhodné metodiky Agile, Waterfall apod. Řízeni projektu bude vždy podle metodiky PRINCE2 vedenou jednou z naších zkušených kolegyň. Často se nás zákaznici ptají na demo ukázku SW, která může být od reálného SW, již používaného u jiného zákazníka, nebo pomoci konceptu, demo ukázky připravené na míru pro Vás.

Zahájení projektu … co bude dál?

Projekt začíná tzv. Kick Off Meetingem na základě již podepsané smlouvy. V rámci Kick Off Meetingu, představíme Vám Projektový plán projektu a všechny detaily spojené s realizaci projektu. V rámci vašeho projektového týmu, dozvíte se např. co je cílem projektu, předmět dodání, jak vypadá harmonogram projektu. Naši povinnosti je seznámit vás s ostatními detaily na projektu, jako např. rizika, komunikační matice, bezpečnost, řízení změn, řízení rizik, výstupy na projektu, způsob akceptace apod.

Vývoj začíná … během vývoje

Vývoj z pravidla probíhá agilně, prostřednictvím tzv. sprintu, které máme na úrovní jednoho nebo dvou týdnů. Na konci sprintu je vždy známy výsledek práce, kterou odvedli naši kolegové v rámci vývojového týmu. Na jeho konci, představíme Vám výsledek této práce v rámci sprintu. Váš názor je pro nás vždy důležitý proto, výsledkem prezentace jsou konsolidované informace, které se předávají do našeho vývojového týmu.

Vývoj SW od Solutia s.r.o.

Po ukončení vývoje … testování

Před nasazením SW řešení přímo na míru pro Vás, je potřeba tento SW vyzkoušet. Tato činnost je zajištěna prostřednictvím testování, které provádíme samostatně nebo ve spolupráce s vámi nebo vy ji provádíte zcela samostatně a odděleně od nás. Zjištěné nedostatky, požadavky na úpravu, nebo zcela nové požadavky automatizovaně sbíráme pomoci specializovaného SW, který vám poskytneme pro tyto účely práce. Podle toho SW produkt upravujeme, tak aby vyhovoval vaším představám a potřebám.

Spuštění SW … a produkce

Na základě vytvořeného finálního releasu SW produktu, zajišťujeme nasazení SW produktu nebo poskytujeme součinnost při nasazení SW produktu vaším IT týmem. Oboustranně máme radost a příjemnou pocit o tom, že se nám tato část podařila zautomatizovat a digitalizovat. Máme radost a slavíme.

Po nasazení SW … podpora

Staráme se o to, aby aplikace běžela tak jak má v rámci nastavené podpory. Ona můžu u nás být až v režimu 24×7. naši kolegové jsou vždy připravení poskytnout tu nejvyšší odbornost pro zajištění plynulého chodu vaše aplikace. Dále jste se jistě všimli, že vaše aplikace bude potřebovat nové funkcionality ať vynucené např. businesse nebo legislativou či požadavkem na zlepšení.  I v tomto okamžiku máte naši plnou podporu, tak aby vám váš SW produkt umožnil tu nejlepší zkušenost.

Webové aplikace

Vývoj webových aplikací může být složitý proces, který vyžaduje pečlivé plánování, design, implementaci, testování a nasazení. Zde je obecný postup vývoje webové aplikace:

1.Definice požadavků:

   Začněte tím, že jasně definujete cíle a požadavky vaší aplikace. Jaké funkce by měla aplikace obsahovat? Kdo jsou uživatelé? Jaké problémy by měla aplikace řešit?

2. Plánování a design:

   Vytvoříme hrubý plán aplikace a navrhněte uživatelské rozhraní (UI). To zahrnuje návrh struktury stránek, uspořádání prvků, barvy, typografii a všechny vizuální prvky. Může být užitečné vytvořit náčrtky (wireframes) nebo interaktivní prototypy.

3. Výběr technologií:

   Rozhodneme se, jaké technologie a frameworky budete používat. Vybereme programovací jazyk (např. JavaScript, Python, Ruby), framework (např. React, Angular, Vue pro frontend; Django, Ruby on Rails pro backend) a databázový systém.

4. Implementace frontendu:

   Začněme vytvářet uživatelské rozhraní podle navrženého UI. Použijte HTML, CSS a JavaScript (nebo jiný relevantní frontendový jazyk) k vytvoření interaktivních stránek a funkčností.

5. Implementace backendu:

   Vytvoříme backendovou část aplikace, která zpracovává požadavky uživatelů, komunikuje s databází a provádí logiku aplikace. Zabezpečte backend, aby se minimalizovaly bezpečnostní hrozby, jako jsou SQL injection a CSRF útoky.

6. Databáze:

   Navrhneme a implementujeme databázovou strukturu, která umožní ukládat a spravovat data aplikace. Zvolíme vhodný databázový systém (např. MySQL, PostgreSQL, MongoDB) a vytvoříme dotazy pro získávání a ukládání dat.

7. Testování:

   Důkladně otestujeme aplikaci na všech úrovních – od funkčních prvků přes uživatelské rozhraní až po bezpečnostní otázky. Provádíme manuální testy, automatizované testování a potenciálně i testování beta uživateli.

8. Optimalizace a ladění:

   Věnujeme čas optimalizaci výkonu aplikace. Zlepšujeme rychlost načítání, optimalizujte databázové dotazy a minimalizujte zbytečné přenosy dat. Ladění aplikace může zabránit neočekávaným chybám a zvýšit celkovou spokojenost uživatelů.

9. Nasazení:

   Připravíme aplikaci k nasazení na produkční server. Nastavíme serverové prostředí, zabezpečení a konfigurace. Můžeme použít nástroje jako Docker pro izolaci aplikace.

10. Monitorování a údržba:

    Po nasazení pravidelně monitorujeme chování aplikace, sledujte výkon a zpracovávejte případné chyby. Aktualizujeme aplikaci na základě nových požadavků nebo zpětné vazby od uživatelů.

11. Další vývoj a vylepšování:

    Webové aplikace jsou organické a mohou se neustále vyvíjet. Získáváme zpětnou vazbu uživatelů a průběžně přidáváme nové funkce, vylepšení a úpravy na základě potřeb uživatelů.

Tento postup je obecný a může se lišit v závislosti na konkrétním projektu a technologiích, který používáme. Důležité je mít flexibilitu, průběžně se učit a přizpůsobovat se měnícím se potřebám zákazníků.

Mobilní aplikace

Vývoj mobilních aplikací může být složitý proces, který vyžaduje pečlivé plánování, design, implementaci, testování a nasazení. Zde je obecný postup vývoje webové aplikace:

1.Definice požadavků:

   Začněte tím, že jasně definujete cíle a požadavky vaší aplikace. Jaké funkce by měla aplikace obsahovat? Kdo jsou uživatelé? Jaké problémy by měla aplikace řešit?

2. Plánování a design:

   Vytvoříme hrubý plán aplikace a navrhněte uživatelské rozhraní (UI). To zahrnuje návrh struktury stránek, uspořádání prvků, barvy, typografii a všechny vizuální prvky. Může být užitečné vytvořit náčrtky (wireframes) nebo interaktivní prototypy.

3. Výběr technologií:

   Rozhodneme se, jaké technologie a frameworky budete používat. Vybereme programovací jazyk (např. JavaScript, Python, Ruby), framework (např. React, Angular, Vue pro frontend; Django, Ruby on Rails pro backend) a databázový systém.

4. Implementace frontendu:

   Začněme vytvářet uživatelské rozhraní podle navrženého UI. Použijte HTML, CSS a JavaScript (nebo jiný relevantní frontendový jazyk) k vytvoření interaktivních stránek a funkčností.

5. Implementace backendu:

   Vytvoříme backendovou část aplikace, která zpracovává požadavky uživatelů, komunikuje s databází a provádí logiku aplikace. Zabezpečte backend, aby se minimalizovaly bezpečnostní hrozby, jako jsou SQL injection a CSRF útoky.

6. Databáze:

   Navrhneme a implementujeme databázovou strukturu, která umožní ukládat a spravovat data aplikace. Zvolíme vhodný databázový systém (např. MySQL, PostgreSQL, MongoDB) a vytvoříme dotazy pro získávání a ukládání dat.

7. Testování:

   Důkladně otestujeme aplikaci na všech úrovních – od funkčních prvků přes uživatelské rozhraní až po bezpečnostní otázky. Provádíme manuální testy, automatizované testování a potenciálně i testování beta uživateli.

8. Optimalizace a ladění:

   Věnujeme čas optimalizaci výkonu aplikace. Zlepšujeme rychlost načítání, optimalizujte databázové dotazy a minimalizujte zbytečné přenosy dat. Ladění aplikace může zabránit neočekávaným chybám a zvýšit celkovou spokojenost uživatelů.

9. Nasazení:

   Připravíme aplikaci k nasazení na produkční server. Nastavíme serverové prostředí, zabezpečení a konfigurace. Můžeme použít nástroje jako Docker pro izolaci aplikace.

10. Monitorování a údržba:

    Po nasazení pravidelně monitorujeme chování aplikace, sledujte výkon a zpracovávejte případné chyby. Aktualizujeme aplikaci na základě nových požadavků nebo zpětné vazby od uživatelů.

11. Další vývoj a vylepšování:

    Mobilních aplikace jsou organické a mohou se neustále vyvíjet. Získáváme zpětnou vazbu uživatelů a průběžně přidáváme nové funkce, vylepšení a úpravy na základě potřeb uživatelů.

Tento postup je obecný a může se lišit v závislosti na konkrétním projektu a technologiích, který používáme. Důležité je mít flexibilitu, průběžně se učit a přizpůsobovat se měnícím se potřebám zákazníků.

Progresivní aplikace

Progressive Web App (PWA) je webová aplikace, která nabízí uživatelům podobný zážitek jako nativní mobilní aplikace. PWA kombinuje výhody webových technologií s funkcemi, které umožňují offline přístup, rychlé načítání a další interaktivní prvky. Zde je postup vývoje pro Progressive Web App:

1. Definice cílů a požadavků:

   Definujeme, co zákaznik chce pomocí PWA dosáhnout. Jaké funkce budou k dispozici offline? Jaké informace budou ukládány v cache? Kdo jsou cíloví uživatelé?

2. Výběr technologií a frameworků:

   Vybereme technologie, které budete používat pro vývoj PWA. HTML, CSS a JavaScript jsou základními jazyky, ale také můžeme zvážit použití frameworků jako React, Angular nebo Vue pro lepší organizaci kódu.

3. Vytvoření základního webového rozhraní:

   Začneme vytvářet základní webovou strukturu a uživatelské rozhraní. Dbáme na responzivní design, aby se aplikace dobře zobrazovala na různých zařízeních.

4. Offline funkcionalita:

   Využijeme Service Workers, což jsou skripty, které běží v pozadí a umožňují cachovat obsah a nabízet offline přístup. Uložte do cache kritické zdroje (HTML, CSS, JavaScript) a zvolte, které další soubory budou dostupné offline.

5. Manifest:

   Vytvoříme manifest, což je JSON soubor, který popisuje vaši aplikaci. Tento soubor určuje název, ikonu, barvy, orientaci a další parametry pro zobrazení aplikace na zařízeních.

6. Testování:

   Provádíme testování na různých zařízeních a prohlížečích. Ověřte, že offline funkcionality fungují správně a že aplikace reaguje rychle.

7. Optimalizace:

   Optimalizujeme načítání aplikace. Minimalizujeme a komprimujte kód, optimalizujeme obrázky a snažte se dosáhnout co nejrychlejšího načítání.

8. Zabezpečení:

   Dbáme na zabezpečení aplikace. Použiváme HTTPS pro zabezpečenou komunikaci, abyste zabránili útokům a zajistili důvěryhodnost.

9. Nasazení:

   Publikujeme aplikaci na vašem serveru nebo hostujte na platformách jako Netlify nebo Vercel.

10. Zveřejnění:

    Informujeme uživatele o existenci PWA. Můžete přidat metatagy do hlavičky stránky, které umožní uživatelům „nainstalovat“ PWA na svém zařízení z prohlížeče.

11. Údržba a aktualizace:

    Pravidelně aktualizujeme  PWA. Může to zahrnovat úpravy designu, přidání nových funkcí a opravy chyb.

12. Monitoring a analýza:

    Sledujeme chování uživatelů ve vaší PWA a analyzujte data, abyste lépe porozuměli tomu, jak je používána, a co lze zlepšit.

Postup pro vývoj PWA může být specifický pro každý projekt a technologie, které používáte. Klíčem je dodržovat principy rychlosti, spolehlivosti a uživatelského zážitku.