Klientas„ServiceBridge“
PramonėFranšizės
RegionasJAV
Įgyvendintas darbasIndividualizuotos programinės įrangos kūrimas, žiniatinklio svetainių kūrimas, personalo papildymas
Iššūkiai
Pirmasis iššūkis buvo skubus poreikis greitai sukurti į franšizės teikėjus orientuotas funkcijas, todėl buvo būtina laikytis kelių itin trumpų terminų. Be to, iškilo klausimas, kaip reikėtų pritaikyti autorinių atlyginimų sistemą, kad ji atitiktų kliento poreikius, bet tuo pačiu nereikėtų atlikti jokių programavimo darbų. Tais atvejais, kai reikėdavo išplėsti funkcijas, visa sistema turėjo būti pritaikyta taip, kad leistų tai atlikti su kuo mažesne trintimi. - Kiekviena dalis turi būti konfigūruojama be kūrėjo įsikišimo
- Išplėtimas yra prioritetas
Tikslai
Pagrindinis „ServiceBridge“ tikslas bendradarbiaujant su „Toughlex“ buvo kartu sukurti naują franšizės autorinių atlyginimų ataskaitų sistemą. Be funkcionalumo reikalavimų, kurie apėmė įvairias autorinių atlyginimų sutartis ir tokias paslaugas kaip atleidimas nuo mokesčių, įsakomieji vekseliai ir kt., buvo siekiama, kad beveik kiekvieną dalį būtų galima lengvai konfigūruoti.- Parengti architektūrinę viziją prieš įgyvendinimą
- Pasirinkti technologiją, kuri apima daugumą atvejų
- Užtikrinti aukštą vieneto ir integracijos testų aprėptį
- Kiekviename etape naudoti keičiamo masto sprendimus
Sukurta vertė
Atsižvelgdama į projekto iššūkius ir tikslus, „Toughlex“ įkvėpimo sėmėsi iš patirties, įgytos dirbant su „Amazon Web Services“ (AWS). „AWS CloudFormation“ pavyko žmogaus skaitomą dokumentą paversti ištisu unikaliai sukonfigūruotų, tarpusavyje susijusių paslaugų rinkiniu. Būtent to reikėjo autorinių atlyginimų ataskaitų sistemai. Šiuo tikslu įdiegėme „AWS Lambda“ paremtas mikropaslaugas, kad užtikrintume mastelio keitimo galimybę, didelę bandymų aprėptį ir į „AWS“ įkvėptą išplečiamumą orientuotą architektūrą.„Agile“Kad neatsiliktume ir greitai reaguotume į besikeičiančius reikalavimus ir naujus iššūkius, nusprendėme taikyti „Agile“ programinės įrangos kūrimo metodiką, o mūsų pasirinkta sistema – „Scrum“. Tai leido mums nustatyti prioritetus ir užtikrinti funkcionalumą be jokio vėlavimo. Viso proceso metu „Toughlex“ išliko svarbia komandos dalimi, pradedant parengiamuoju etapu ir baigiant retrospektyviniais susitikimais.
IššūkiaiBe to, kad ataskaitos apie autorinius atlyginimus yra labai dinamiškos, pati sritis pasirodė esanti pilna iššūkių. Susidūrėme su periodinių pinigų skaičiavimų skirtingose laiko juostose esančioms įmonėms problema. Norėdami išlaikyti reikiamą laiko juostų logiką, sukūrėme programinę įrangą, kurią būtų galima laikyti savarankiška išplėtimo biblioteka. Norint išplėsti pradinę funkciją, kuri atsižvelgtų į datą, laiką ir laiko juostas, reikėjo taikyti dešimtis skirtingų metodų, kurie išliktų naudingi net ir tada, kai pasikeistų pradinės sąlygos.
Greitas prisitaikymas„ServiceBridge“ turi daugybę funkcijų, skirtų įvairiems franšizės lauko paslaugų poreikiams tenkinti. Autorinių atlyginimų ataskaitų sistema buvo integruota į esamą funkcionalumą. „Toughlex“ greitai prisitaikė prie naudojamų technologijų ir paslaugų, o tai tapo pagrindiniu veiksniu, padėjusiu pasiekti puikių rezultatų.
Rezultatai„Toughlex“ pavyko tapti vertinga dinamiškos komandos dalimi, kuri sukūrė žiniatinklio programą, tinkančią naudoti beveik visų tipų įrenginiuose, ir skirtingus dizainus, kuriuos buvo galima naudoti kaip prekių ženklais nepažymėtus produktus, pritaikytus įvairiems peržiūros režimams, skirtiems žmonėms su negalia. Ji taip pat sklandžiai integruota į jau esamą projektą kaip atskiras komponentas. Tai buvo minimalus gyvybingas produktas, kuris atitiko techninius reikalavimus ir kurį klientas įvertino labai teigiamai.
Technologijos
Kadangi produktas jau turėjo ilgą istoriją, nusprendėme naudoti esamą rinkinį: „.NET“ – „back-end“ daliai, „PostgreSQL“ – pagrindinei duomenų bazei, „Knockout“ – kliento pusei. Kurdami mikroservisus naudojome „AWS Lambda“ ir kitas „Amazon“ žiniatinklio paslaugas. Tai leido mums sukurti itin lengvai keičiamo dydžio, lengvai valdomą ir nebrangią architektūrą. Norėdami sutrumpinti naujų mikroservisų kūrimo ir valdymo laiką, sukūrėme šabloną ir automatizavome diegimo procesą skirtingose aplinkose naudodami „PowerShell“ ir „TeamCity“.
Įgūdžiai
- „.NET“
- Individualizuotos programinės įrangos kūrimas
- „AWS“
- „Knockout“
- „PostgreSQL“
- „TeamCity“
- „PowerShell“
- „Agile“
