Manapság a mobilalkalmazás fejlesztés nagy népszerűségnek örvend, a mobil eszközök térhódítása megállíthatatlanul erősödik. Nem szabad viszont alapos tervezés nélkül nekikezdeni a fejlesztésnek. Több mint 1.5 millió mobilalkalmazás található az Apple App Store és a Google Play áruházak mindegyikében. Fontos tehát, hogy tisztában legyünk azzal, mi egy mobilalkalmazás tervezésének a folyamata és milyen kihívásokkal kell szembenézni. Amennyiben vállalati alkalmazásról van szó, a helyzet egyszerűbb, hiszen nem kell a konkurenciával megküzdeni, ha azonban az átlag felhasználóknak fejlesztünk vagy szoftverterméket készítünk érdemes alaposan körültekinteni.
A mobil alkalmazás fejlesztés ciklusa nagyjából megegyezik egy hagyományos szoftver fejlesztésével, a különbség csak a futtató eszköz és a hozzájuk kapcsolódó sajátosságok.
Ma már viszonylag kiforrott a mobilalkalmazás fejlesztés ennek ellenére egy sikeres projekt komoly és alapos előkészületeket igényel. Ha adunk a minőségre az egyetlen út a professzionális kivitelezés átgondolt design-al, kiemelkedő felhasználói élménnyel, alapos teszteléssel és minőségellenőrzéssel. A következő cikkben mi ezt szeretnénk részletesen bemutatni és hogy ehhez kapcsolódóan milyen kihívásokkal kell szembenéznünk.

1. Kutatás
Minden mobil alkalmazás fejlesztés egy ötlettel kezdődik. A cél, hogy ezt az ötletet finomítsuk és pontosan definiáljuk, hogy biztos alapot nyújtson a fejlesztéshez. A kutatás és tervezés során figyelembe vesszük a jövőbeli felhasználóink életkorát, motivációit, viselkedését és céljait. Ezt minden lépésnél tartsuk szemelőtt. Amennyiben szoftverterméket készítünk, számoljunk azzal is, hogy a felhasználókat meg kell győzni arról, hogy a mi termékünket válasszák és megnyerni a bizalmukat. Ennek a fázisnak a végére az a célunk, hogy megértsük, hogy fogja használni a végfelhasználó az alkalmazásunkat.
Ez a lépés kiemelten fontos, mert megteremtjük az alapot a következő fázisokhoz melyek ezután következnek. Csak alapos utánajárás után lépjünk tovább. A másik lényeges feladat a konkurencia elemzése. Ha részletesen megvizsgáljuk a konkurens mobilalkalmazásokat, ötleteket szerezhetünk tőlük, láthatjuk mik a gyenge pontjaik és mit érdemes javítani a saját készülő alkalmazásunkban.
2. A mobilalkalmazás wireframe tervének kialakítása
A következő lépés az alkalmazáshoz kapcsolódó specifikáció felvázolása és a wireframe tervek elkészítése. Túl sok idő általában nincs erre a lépésre, viszont fontos az alaposság, hiszen egy részletes vázlat készítésre az elképzelt projektről segíthet felfedni a hiányosságokat. A wireframek létrehozása kommunikációs szempontból is lényeges, hatékonyan segíti az együttműködést beleértve a komponensek részletesebb meghatározását, megértését és a design terv elkészítését. Fontos átgondolnunk továbbá, hogy a backenden a fejlesztésben előfordulható technikai korlátokat is számba vegyük és még ebben a kezdeti fázisban megoldást találjunk rájuk. Azt szeretnénk elérni, hogy legyen egy tiszta képünk arról, hogy pontosan mit szeretnénk fejleszteni, milyen funkciókkal és ezek az ötletek és elképzelések a fejlesztés végeztével miként fognak összeállni egy jól működő egésszé. Érdemes készíteni egy fejlesztési tervet is, story-boarddal hogy lássuk az egyes „képernyők” és funkciók között az összefüggést és a felhasználó útját az alkalmazáson belül. Figyeljünk a felhasználói élményre!
3. Technológiai döntések
Erre a pontra érve már van egy világos elképzelésünk a mobilalkalmazás kinézetéről. Ebben a fázisban a háttérrendszert (backend) kell átgondolnunk, a cél kideríteni és visszaigazolást kapni arról, hogy az elképzelés valóban technikailag is kivitelezhető. A mobilalkalmazás fejlesztés komplikáltsága függ attól is, hogy milyen eszközökön fog futni (telefon, tablet, okosóra) és milyen platformokat kell támogatnia (iOS, Android). Amennyiben a csapat úgy látja, bizonyos funkciókat elvethet, vagy visszadobhat technológóai szempontból. Ilyenkor érdemes tartani egy gyors ötletelést, brainstorming-ot, feltenni néhány szükséges kérdést és átnézni, hol is tartunk.
4. Prototípus
Készítsünk egy gyors prototípust. A kulcsszó a gyors. Egy „kézzel fogható”, kattintható prototípus alkalmazás nélkül nem fogjuk megérteni igazán a felhasználói élményt, a pontos felhasználói folyamatot és működést. Amint megvagyunk a demó mobilalkalmazás fejlesztéssel, teszteljük le valós felhasználókon a legfontosabb használati eseteket. A kapott adatokból ki fog derülni, hogy biztosan jó irányba haladunk-e. Fontos, hogy ne csak a tesztelők hanem a vezetőség (esetleg befektetők) tagjai is megnézzék a prototípust és visszajelzéseket adhassanak és kapjanak is arról, hogy a megfelelő app készül.
5. Design
A design kialakítása és megtervezése az utolsó lépés a tényleges fejlesztés előtt. A UX (user experience – felhasználói élmény) tervező megtervezi és kialakítja a kapcsolatokat és interakciókat a design elemek között, míg a felhasználói felület tervező (UI designer) a mobil alkalmazás kinézetét és látványát készíti el. Ez a fázis egy többlépcsős folyamat, sok egyeztetést és kommunikációt igényel. Az eredmény egy vizuális terv és utasítás ami iránymutatást ad a fejlesztőknek a kész alkalmazás működéséről, kinézetéről, interakcióiról. A projekt méretétől és költségvetésétől függően ez lehet egy fél napos – napos munka is de akár egy teljes csapat hetes munkáját is igényelheti.
6. A mobilalkalmazás fejlesztés
A fejlesztési fázis az esetek nagy részében viszonylag korán elkezdődik. Valójában amint az ötletünk kitisztul, prototípust fejlesztünk, ami igazolja az elképzelésünk helyességét és segít felmérni a munka valós komplexitását és méretét.
A fejlesztés előrehaladtával az alkalmazás különböző fázisokon esik át. Kezdetben a „core” azaz a főbb, fontosabb funkciók működnek, viszont nincs kifejezetten tesztelve ezért hibák előfordulhatnak, egyéb extra funkciók még nem működnek. A második fázisban a kívánt funkciók nagy része megvalósításra kerül. A mobil alkalmazás egy gyors tesztelésen és hibajavításon is átesik, azonban hibák még maradhatnak. Külső felhasználók és tesztelők is kézbe vehetik már az app-et. Miután a tesztben előjött hibák javítása megtörtént az alkalmazás készenáll a kiadásra.
Ha komplex projektről van szó ahol a követelmények rendszeresen változnak, használjuk ki az agilis fejlesztés lehetőségeit. Ez elősegíti a tervezést, a progresszív fejlesztést, gyors indulást és a folyamatos fejlődést. Egy nagy alkalmazást több kisebb modulra tudunk bontani és az agilis módszert minden részre tudunk alkalmazni.
7. Tesztelés
A mobilalkalmazás fejlesztés során fontos, hogy gyakran és már viszonylag korán elkezdjünk tesztelni. Ha ezt megfogadjuk, a végső költségeket alacsonyabban tudjuk tartani. Minél előrébb vagyunk a fejlesztési ciklusban, annál drágább a hibák javítása. A tesztesetek kialakítása során mindig vegyük figyelembe az eredeti tervet és dokumentációt. A mobilalkalmazás tesztelése nagy feladat, fontos, hogy minden aspektusát lefedjük. Szükséges tesztelni a használhatóságot, a kompatibilitást, a biztonságot, ellenőrizzük az interfészeket, végezzünk stressztesztet és teljesítmény vizsgálatot. Mutassuk meg az alkalmazást valós felhasználóknak is, ezzel tudjuk visszaigazolni, hogy a célfelhasználók értik és tudják használni az alkalmazást. Amennyiben a felhasználói teszten „átmegy” az app-ünk, késznek tekinthetjük és kiadhatunk egy béta verziót. A béta tesztből kapott visszajelzések alapján tovább korrigálhatunk az alkalmazásunk működésén, megjelenésén illetve eldönthetjük készen áll-e a kiadásra.
8. Indítás
A mobilalkalmazás fejlesztés utolsó fázisa az indítás. Az alkalmazásunk elkészült és készen áll arra, hogy nagyobb felhasználói bázist is elérjen. Fontos tudni, hogy az egyes alkalmazás boltokra más-más szabályok vonatkoznak. Az elindulással a mobilalkalmazás fejlesztés nem ér véget. Ahogy egyre többen kezdik el használni, rengeteg visszajelzést fogunk kapni, melyeket érdemes átgondolnunk és az alkalmazás egy következő verziójában megvalósítani. Tipikusan, ahogy az alkalmazás első verziója élesedik, a fejlesztési ciklus újraindul. Minden alkalmazást érdemes frissíteni és bővíteni. Vegyük számításba azt is, hogy az alkalmazásunkat karban is kell tartani, nem elég csak az első verziót elkészíteni.