Mobil megoldások

Hogyan legyen az ötletből sikeres mobilalkalmazás?

10 év app fejlesztési tapasztalattal a hátunk mögött bátran állíthatjuk, hogy kiforrott technikai háttérrel, tapasztal fejlesztő gárdával a hátunk mögött tudjuk hogyan kell egy ötlettől a jól működő alkalmazásig eljutni. Szeretünk olyan alkalmazásokat fejleszteni, amelyeket mi magunk is imádunk használni. Tudjuk, egy app fejlesztése nem programozói sorok hozzáadása egy meglévő grafikai tervhez; sokkal inkább egy csapatmunka Önnel, fejlesztőinkkel, projektmenedzsereinkkel, hogy innovatív megoldásokat találjunk a felmerülő igényekre.
  • IOS natív alkalmazásfejlesztés
  • Android natív alkalmazásfejlesztés
  • Agilis vagy waterfall fejlesztési szemlélet a projektnek megfelelően

Munkáinkból:

A technológia kiválasztása

A technológia kiválasztása a tervezéskor kritikus fontosságú. Mobilra számtalan módon lehet fejleszteni, csak néhány példát kiemelve natív módon, cross platform megoldásokkal, hybrid technológiát alkalmazva. De ha csak egyszerűen szeretnél megjelenni a mobiltelefonokon is, lehet hogy a célravezetőbb először egy reszponziv webalkalmazás irányába elindulni. Segítünk a feladat feltérképezésében, specifikálásában, és a technológia kiválasztásában is.

Vízesés vs. Agilis

Módszertanunk

A közös munka kezdetekor általában az egyik első kérdés szokott lenni, – Milyen fejlesztési módszertant kövessünk? Ez egyszerűen megfogalmazva azt jelenti, hogy hogyan szervezzük meg a munkafolyamatokat a fejlesztés során.
A sikeres projekt eléréséhez valamilyen fejlesztési módszertan bevett gyakorlatai alapján érdemes dolgoznunk. A két legjobban elterjedt ilyen az
  • Agile, azaz agilis fejlesztési módszertan
  • és a klasszikus, tradícionális, azaz vízesés szerinti módszertan.
Tapasztalataink szerint mindkét fejlesztési irányban el lehet indulni egy fejlesztési projekt megvalósításánál, azok előnyeivel és hátrányaival azonban jó tisztában lenni.

A vízesés
(waterfall) modell

A vízesés modell a lineáris módszertan egyik legismertebb képviselője. Az amerikai haditengerészet által létrehozott módszert katonai szoftverek magas szintű kivitelezéséhez alakították ki. A módszertan lényege, hogy a fejlesztést több részfolyamatra bontják és minden fázist az előző jóváhagyása és befejezése után indítanak el. A folyamat kidolgozása előre meghatározott sorrendben történik, így nagy hangsúlyt kell fektetni a rendszer megtervezésére. A módszertan előnye, hogy nem csak szoftverfejlesztési, hanem termékfejlesztési területen kiválóan alkalmazható magas fokú szabályozottsága révén.

Előnyei:

  • A fejlesztők és az ügyfél már a projekt elején pontosan tudják, hogy mi a leszállítandó termék, melyik részei mikor kerülnek bevezetésre.
  • Áttekinthetőbb a projekt fejlesztési fázisban, az ügyfél jobban tudja, hogy hol áll a fejlesztés, az előrehaladás jobban mérhető, átláthatóbb.
  • Egy nem nagyon komplex munka esetében költségkímélőbb az agilis fejlesztési módszernél, a sok iteráció elhagyása miatt
  • Az ügyfél részéről nem igényel olyan nagy mértékű bevonódást mint az agilis fejlesztés
  • Mivel a projekt korai szakaszában megtervezésre kerülnek az egyes szoftver elemek, később ezek fejlesztés párhuzamosan is folyhat, ezért gyorsabb a fejlesztés mint az agilis módszertan

Hátrányai:

  • Ha nem fordítunk elegendő időt a szoftver, app, webalkalmazás tervezésére a projekt elején, nem az általunk elvárt működést, felhasználói élményt fogjuk kapni.
  • Az ügyfél néha nyomás alatt érzi magát a tervezéskor a sok felmerülő kérdés miatt, amire már ebben a fázisban választ kell adni. Másik probléma lehet, hogy a megrendelőtől nem feltétlenül elvárható, hogy képesek legyen legyen felvázolni magában a leendő alkalmazás drótvázát, vagy annak pontos működését. Az Appz4-nél ezért fektetünk külön hangsúlyt a tervezésre, és segítünk dedikált projektmenedzser bevonásával kódba ültetni az az üzleti elképzeléseket.

Az agilis
módszertan és a Scrum

Az agilis szoftverfejlesztés a gyors és rugalmas megoldásokat segíti elő. Multifunkcionális és önszervező csapatok együttműködésével fejlődik a szoftver a követelmények és megoldások összehangolásával.
A Scrum egy agilis szoftverfejlesztési módszertan, mely a csoporton belüli összetartásra összpontosít. A folyamatos szóbeli kommunikáció és személyes találkozók szervezésével hatékony módszert alkot a fejlesztési területen. A Scrum meghatározott szerepeket és tevékenységeket állít fel, mellyel lefedi az összes munkafolyamatot.

Előnyei:

  • Az ügyfélnek rengeteg lehetősége van a fejlesztés folyamán beleszólni annak menetébe, könnyen változtatni tud a funkciókon.
  • Az ügyfél jobban belevonva érzi magát a projektbe
  • A fejlesztés még jobban felhasználó központú a sok interakció következtében

Hátrányai:

  • Mivel ez a módszertan nagyon nagy mértékű, és folyamatos idő ráfordítást igényel az ügyfél részéről, probléma lehet ha ez nem történik meg, és a fejlesztés lelassul, megáll.
  • Az agile akkor működik a legjobban, ha csak a projektre dedikált fejlesztők, és szakemberek dolgoznak rajta. Ezért egy adott méretnél kisebb egyedi fejlesztésbe így nem érdemes belekezdeni.
  • Mivel az agilis fejlesztés konkrét idő alapú fejlesztésekben gondolkodik folyamatos újra priorizálással, könnyen előfordulhat hogy egyes szofver elemek, modulok nem készülnek el időre. Ez további sprinteket eredményez, ami könnyen jelentheti a fejlesztés időbeni elcsúszását, a költségek elszaladását.
  • Az agilis projekt iteratív természetéből adódóan sok lehet a menet közbeni újra tervezésből adódó refactoring (újragondolás, újraírás), amely a szoftver termék minőségének romlásához is vezethet.

Android fejlesztés

A jövőbeni siker kulcsa az eredményes alkalmazásfejlesztés. Az Android jelenleg a leggyorsabban fejlődő mobilplatform.

Android fejlesztés

iOS fejlesztés

A fejlesztési folyamatot az első ötletcsírától a megvalósításon keresztül egészen az App Store-ba való feltöltésig kísérjük.

iOS fejlesztés

Mobil app fejlesztés

Swift fejlesztési környezetben fejlesztünk iOS platformra, és Kotlinban Androidra, a teljesítményre, és clean kódra összepontosítva.

Mobil alkalmazások