Az egyedi fejlesztési szolgáltatásaink konkrét üzleti igény által támasztott szoftverigényeket hivatottak kielégíteni. A fejlesztések célja az, hogy hatékonyabban, automatizáltabban, az emberi hibázás lehetőségét csökkentve olyan alkalmazásokat hozzunk létre, amelyek hatékonyabbá teszik ügyfeleinket a konkurenciával szemben.
Az Atigris a következő három területen kínál egyedi fejlesztési szolgáltatásokat:
- Microsoft .NET alapú megoldások
- Microsoft Office SharePoint Server alapú portál megoldások
- Microsoft Azure platformra épülő fejlesztések
Az .NET alapú egyedi fejlesztésű szoftvertermékek kivitelezését fázisokra bontjuk a következőkben ismertetett módon.
Igényfelmérés - tervezés
A munka első lépése mindig az igényfelmérés, amelyet akár több napig tartó személyes konzultáció keretein belül végzünk. A konzultáció során megismerkedünk szoftveresen támogatni kívánt szakterület fogalmaival, munkafolyamataival, felhasználóival, szabályaival. Amikor úgy gondoljuk, hogy a feladatot megértettük, akkor elkészítjük az un. Domain Modelt, amely a szakterületi problémakört írja le entitásokra, interfészekre leképezve. A DDD (Domain Driven Design) elvei alapján dolgozunk.
Prototípus
A Domain Model alapján a program felhasználói felületének egy vázát készítjük el, ahol már látszanak az alapvető képernyők, listák, adatbeviteli űrlapok. A prototípus felületeit adatokkal töltjük fel, hogy könnyebben értelmezhető legyen a felületi elemek szerepe. A prototípus alapján a felhasználóval újra megvitatjuk az igényeket, amely eredményeként a domain model is módosításra kerülhet. A fázis lezárása után az architektúra tervezés következik.
Architektúra tervezés
A részletes tervezés során a domain model alapján adatmodelt hozunk létre. Ez azt határozza meg, hogy miként kerülnek tárolásra a domain model entitásai. Finomítjuk az interfészek definícióját, amelyek a később kialakítandó üzleti szolgáltatások műveleteit írják le. Mindezt a SOA elvei alapján tesszük meg. Megtervezzük a Rendszer architektúráját, azaz elhelyezzük, összekapcsoljuk azokat a komponenseket, amelyek a rendszer működése szempontjából szükségesek (model, üzleti logika, adatelérés, felhasználói felület, infrastruktúra-szolgáltatások, külső rendszerkapcsolatok).
Terv dokumentálása
A fenti fázisok során követelményspecifikáció, igény szerint rendszerterv készül. A követelményspecifikáció leírja a programmal szemben állított funkcionális és nem funkcionális elvárásokat. Rendszerterv dokumentumot csak az Ügyfél kifejezett kérésére készítünk.
Fejlesztés
A fejlesztési fázist az agilis elvek szerint iterációkra bontjuk. Egy-egy iteráció elején a fejlesztőkkel pontosítjuk, priorizáljuk a fejlesztendő munkadarabokat, valamint elvégezzük a fejlesztést. Fontos, hogy egy-egy funkció lefejlesztésekor a TDD (Test Driven Development) elve alapján unit teszteket (egység teszt) készítünk, hogy az esetleges regressziókat megelőzzük. Az iterációk végén tesztelőink a felhasználói felület működését veszik górcső alá, amennyiben hibát találnak, azt a fejlesztői az iteráció vége előtt javítják. Az iteráció végén a felhasználó megtekinti a termék eddig elkészült részeit, elmondja megjegyzéseit, változtatási igényeit. A következő iteráció ezen elvek mentén folytatódik.
A fejlesztés során igyekszünk mindig a legmodernebb Microsoft eszközöket alkalmazni (.NET verzió, Visual Studio, SQL Server, stb.) azért, hogy a lehető legnagyobb hatékonysággal tudjunk dolgozni. Munkatársaink ebből kifolyólag naprakészek az éppen aktuális technológiákkal, eszközökkel kapcsolatban.
Előszeretettel alkalmazzuk a pair programming (páros programozás) elvét, hogy magasabb minőségű kód álljon elő.
Dokumentálás
A rendszerről felhasználói és üzemeltetői dokumentáció készül. A felhasználói dokumentáció a Rendszer használatát ismerteti közérthető nyelven megfogalmazva. A felhasználói dokumentáció, mint online help is működik a szoftvertermékekben. Az üzemeltetői dokumentáció a telepítés menetét valamint a karbantartási műveleteket hivatott részletezni.
A Sharepoint alapú egyedi fejlesztésű szoftvertermékek kivitelezését a .NET alapú megoldásokhoz hasonlóan fázisokra bontjuk. Azonban a fázisok eltérnek ebben az esetben.
Igényfelmérés – prototípus
A .NET alapú szoftverekhez hasonlóan a munka első lépése itt is az igényfelmérés, amelyet akár több napig tartó személyes konzultáció keretein belül végzünk. A konzultáció során megismerkedünk szoftveresen támogatni kívánt szakterület fogalmaival, munkafolyamataival, felhasználóival, szabályaival. A program felhasználói felületének egy vázát készítjük el, ahol már látszanak az alapvető képernyők, listák, adatbeviteli űrlapok. A prototípus felületeit adatokkal töltjük fel, hogy könnyebben értelmezhető legyen a felületi elemek szerepe. A prototípus alapján a felhasználóval újra megvitatjuk az igényeket. A fázis lezárása után az architektúra tervezés következik.
Terv dokumentálása
Az igényfelmérés során követelményspecifikáció, igény szerint rendszerterv készül. A követelményspecifikáció leírja a programmal szemben állított funkcionális és nem funkcionális elvárásokat. Rendszerterv dokumentumot csak az Ügyfél kifejezett kérésére készítünk.
Fejlesztés
A fejlesztési fázist az agilis elvek szerint iterációkra bontjuk. Egy-egy iteráció elején a fejlesztőkkel pontosítjuk, priorizáljuk a fejlesztendő munkadarabokat, valamint elvégezzük a fejlesztést. A fejlesztés során alakítjuk ki a jogosultsági rendszert, a munkafolyamatokat, az adatvalidációt, az egyedi design-t igénylő Sharepoint felületi elemeket is. Az iterációk végén tesztelőink a felhasználói felület működését veszik górcső alá, amennyiben hibát találnak, azt a fejlesztői az iteráció vége előtt javítják. Az iteráció végén a felhasználó megtekinti a termék eddig elkészült részeit, elmondja megjegyzéseit, változtatási igényeit. A következő iteráció ezen elvek mentén folytatódik.
A fejlesztés során igyekszünk mindig a legmodernebb Sharepoint eszközöket alkalmazni azért, hogy a lehető legnagyobb hatékonysággal tudjunk dolgozni. Munkatársaink ebből kifolyólag naprakészek az éppen aktuális technológiákkal, eszközökkel kapcsolatban.
Dokumentálás
A rendszerről felhasználói és üzemeltetői dokumentáció készül. A felhasználói dokumentáció a Rendszer használatát ismerteti közérthető nyelven megfogalmazva. A felhasználói dokumentáció, mint online help is működik a szoftvertermékekben. Az üzemeltetői dokumentáció a telepítés menetét valamint a karbantartási műveleteket hivatott részletezni.
Az Azure a Microsoft felhő (cloud) alapú fejlesztési és üzemeltetési platformja. A fejlesztő szempontjából egy végtelen kapacitással rendelkező kiszolgálóplatform, amely a számos új lehetőség mellett a .NET megszokott lehetőségét is nyújtja számunkra.
Ha a szervezet adatközpontjában üzemeltetjük vagy külső szolgáltatónál hosztoltatjuk a szervereinket, tudjuk, hogy mik azok a határok, amin belül mozognunk kell, a szerverek karbantartásáért és felügyeléséért is mi felelünk. A Microsoft felhő esetében szerverek ezrei áll rendelkezésünkre, amelyről nem tudjuk, hogy az alkalmazásunk éppen hol tárolódik, de biztosak lehetünk benne, hogy rendelkezésre áll. A felügyelet, karbantartás és rendelkezésre állás biztosításának terhe lekerül a vállunkról.
A megszokott módon készíthetünk web alapú alkalmazásokat amelyek adatbázishoz, valamint további skálázható tárolási rendszerekhez kapcsolódhatnak (blob, queue, table). Lehetőségünk van (publikus) WCF szolgáltatások valamint folyamatosan futó háttérszolgáltatások készítésére is.
Az Azure-ra épülő szoftverek fejlesztésének módszertana megegyezik az szimpla Microsoft .NET-re épülő szoftverek módszertanával.
A szoftverek utóélete
Miután átadtunk egy programot, még a legkörültekintőbb tesztelés után is akadhatnak hibák a rendszerben. Előfordul, hogy valamely funkcióval kapcsolatban változtatási igény születik, esetleg új igényt fogalmaz meg a felhasználó. A MantisBT rendszert használjuk arra, hogy rendszerezett, dokumentált módon kezeljük az ügyfél-bejelentéseket legyen az hibajelzés, változtatási igény vagy új igény.
Egyedi szoftverfejlesztés területén az Atigris Informatika számos sikeres projekten van túl, amelyekről részletesen az alábbi oldalakon olvashat:
Fejlesztés
Egyedi szoftverfejlesztés
Karácsony Sándor:
Szabó András:
Cseh Tibor:
Kézi Zsuzsanna: