TC2

Az e-ticket fejlesztés margójára

2018.11.07.
tc2

Az E-ticket fejlesztési projekt 3 hónap alatt - egy lehetetlen küldetés?

LEHETETLEN KÜLDETÉS?

Az elmúlt hetekben/hónapokban a különböző fórumokon és cikkekben az emberek ízekre szedtek egy hazai fejlesztésű online jegy rendszer hibáit (teljesen jogosan). A fejlesztő cég elsődleges mentsége a rendszer implementálására adott határidő rövidsége volt (3 hónap), ami szakmai szemmel nézve bizony egy szoros menetrendet követel meg. A feladatot objektíven megvizsgálva, valóban lehetetlen 3 hónap alatt egy jól működő és biztonságos e-ticket rendszert szállítani?

HOGY ÉRDEMES CSINÁLNI?

Tehát a feladat adott, egy online jegy értékesítési platform fejlesztése a (feltehetően) pontosan dokumentált megrendelői igények alapján.

A tervezési fázis egy fontos szakasza a kivitelezésnek – a megfelelő technológiák és program komponensek elméleti összeállítása. Mivel az e-ticket rendszer esetén nem egy speciális feladatról van szó, hanem egy legalább százezres nagyságrendben már implementált szolgáltatás fajtáról, a rendelkezésre álló tervezési minták és komponensek kiforrottak és megbízhatóak. Persze ezek használata mellett nem árt tisztában lenni a leggyakoribb kiber sebezhetőségek kivédéseivel sem.

Ilyen szoros határidő mellett érdemes az agilis projekt menedzsment felé elmozdulni a hagyományos vízesés modell helyett, azaz kis lépésekben, többszöri iteráció alatt kifejleszteni és tökéletesíteni a kért funkcionalitást, amit minden iterációval véleményezhet az ügyfél, tehát már nagyon hamar van egy részlegesen működő szolgáltatás, aminek a tökéletesítésére több fejlesztési-tesztelési ciklus is a rendelkezésre áll.

A szoftver minőségét hogyan lehet a legjobban mérni? Véleményem szerint az éles környezetbe kikerült hibák száma erre egy jó mérőszám. Manapság az automatizált tesztelés és a környezetek közötti verzió promótálással (Continuous Delivery) a hibák jelentős részét még az éles környezet előtt kiszűrhetjük. A tesztek megírása és karbantartása természetesen plusz időként jelenik meg a projekt tervben, ami azonban értékes hiba javítási időtől (és a bizalom elvesztésétől) menti meg a szolgáltató céget.

Ne feledkezzünk az alkalmazás platform összeállításásról, és az azokat támogatási munkákról sem, ami a webes rendszer mellett a mobil platformok széleskörű tesztelhetőségére is ki kell, hogy terjedjen. Ez önerőből megint egy nagy feladat lehet, azonban a publikus felhő szolgáltatók mára a hasonló fejlesztési projektek teljes életciklusát támogatják.

Ez azt jelenti, hogy egy standard alkalmazás platform, például egy Java EE alkalmazásnak, cirka 10 perc alatt rendelkezésre állhat a manapság népszerű adatbázis kezelőkkel, terheléselosztókkal, caching és számos egyéb megoldásokkal. A könnyen duplikálható rendszerek a tesztelésnél hatalmas előnyt jelentenek, hiszen olcsón, több párhuzamosan futó, az éles rendszerrel megegyező teszt rendszert futtathatunk különféle tesztelési metódusoknak, ezáltal mire a rendszerünk a végfelhasználókhoz jut, már tisztában vagyunk a maximális terhelhetőségével és potenciális sebezhetőségeivel.

Az automatikus teszteléshez szükséges teljes fejlesztői eszközök elindítása az alkalmazás platformhoz hasonlóan 10 percekben mérhető. Az eszközök hatékonyan támogatják a verzió követést, automatikus tesztelést és kód minőség mérést, tehát az esetleges hibák még a korai szakaszokban felfedezését.

Mobil platform integráció és teszteléshez automatizált tesztek indíthatók az elmúlt 4-5 év népszerű telefon típusaihoz, amivel a felhasználók telefon készülékeinek zömét lefedhetjük.

Végül, mivel egy jó tervezés az adat begyűjtés, feldolgozás és analitikát sem hagyja figyelmen kívül mint távlati célt, az elérhető Big Data szolgáltatások színvonala és rendelkezésre állása is egyértelmű előnyt jelent a publikus felhő szolgáltatások választásakor.

MI MARADT HÁTRA?

Tehát a fenti módszertanok és szolgáltatások megfelelő alkalmazása után mi maradt a projekt feladataiból?

  • Tesztek megtervezése és megírása
  • A tesztek alapján a funkcionalitás folyamatos, iteratív implementálása.
  • A megfelelő szoftver komponensek integrálása az alkalmazásunkba
  • Funkcionális, performancia, stress stb. tesztelés
  • Változások éles rendszerbe promótálása, majd újabb iterációja a fenti lépéseknek

Jobban, rövidebb idő alatt

Ezek fényében egy hasonló alkalmazásfejlesztés projekt ideje jelentősen lerövidülhet, és mellette a platform biztonsága és skálázhatósága is nagyban javulhat, egy olyan terméket eredményezve, amivel magabiztosan szolgálhatók ki a felhasználók százezrei, akár a 3 hónapos határidőn belül.

További Híreink

Amazon Web Services
vmware

VMware on AWS banki környezetben 

2022.02.18.
tc2

A VMware Cloud on AWS (VMC) jó megoldás a VMware alapon működő on-premise infrastruktúra publikus felhő irányba történő kiterjesztésére. Magda Tamás összefoglalója.

Elolvasom 
Amazon Web Services

AWS Well-Architected Framework

2021.11.18.
tc2

Ahogy on-premise környezetben, a felhőben is érdemes bizonyos időközönként a cloud infrastruktúra működését felülvizsgálni,  újra gondolni, felújítani. A folyamat lehetőséget biztosít a cloud környezetben gyorsan változó technológiai környezet vállalatspecifikus előnyeinek átgondolására.

Elolvasom 
Amazon Web Services

Így költöztesse vállalatát a felhőbe

2021.06.21.
tc2

Posztunkban a felhő migráció fázisai mellett beszélünk a migrációt kiváltó mozgatórugókról, a felhőszolgáltatás előnyeiről és bizonyos esetekben a korlátairól is, írunk a cloud technológia üzleti és szervezeti megtérüléséről, a költség előnyről, és röviden azt is összefoglaltuk, hogy mindebben hogyan tud a TC2 csapata segíteni

Elolvasom 
Amazon Web Services

Az adatvezérelten működő szervezetek

2021.06.07.
tc2

A TC2 olyan AWS szolgáltatásokkal támogatja ügyfeleit, amelyekkel megvalósítható az ún. adat-alapú tervezés és üzletmenet, majd végső soron egy folyamatosan fejlődő, ún. data driven, azaz adatvezérelt szolgáltatási modell alakítható ki.

Elolvasom