Szoftverfejlesztés
A szoftverfejlesztés a szoftverfejlesztés megközelítését olyan formális folyamatként kezeli, mint a hagyományos mérnöki tevékenység. A szoftverfejlesztők a felhasználói igények elemzésével kezdik. Tervezik, telepítik, tesztelik és a megfelelő minőséget fenntartják. Megtanítják a számítógépes programozókat a szükséges kód megírására.
A szoftvermérnökök maguk írhatják meg a kódot, ezáltal komoly programozási készségekre van szükségük ahhoz, hogy a programozókkal megfelelően tudjanak komunikálni, illetve gyakran akár több nyelven is programozhatnak.
A szoftverfejlesztők számítógépes játékokat, üzleti alkalmazásokat, hálózatvezérlő rendszereket és szoftver operációs rendszereket terveznek és fejlesztenek.
Agilis szoftverfejlesztés
Az agilis szó a mindennapi köznyelvben is használatos. A jelentése cselekvésre kész, gyors észjárást jelent. Az agilis módszertan lényege, hogy a fejlesztési folyamatot egységekre, azaz fejlesztési ciklusokra bontják, amelyekben az előzőnél fejlettebb termékverziót készítenek. Így épül fel a szoftver, és folyamatosan bővül a beépített funkciók köre.
Az agilis szoftverfejlesztés olyan keretet biztosít, amelyen belül többféle programozási módszer és gyakorlat létezik. Ide tartozik a Scrum, a Lean, a Kanban, a Crystal, az Extreme Programming, a Feature-Driven Development és a Dynamic Systems Development Method (DSDM).
A programozás céljától, a munkafolyamattól és a csapattól függ, hogy milyen helyzetben melyik módszertant ajánlott követi. Az agilis szoftverfejlesztés egy iteratív folyamat, amely magában foglalja a specifikációt, a tervezést, a fejlesztést és a tesztelést. A szoftver felépítésénél a programozó lépésről lépésre halad, ami a gyakorlatban azt jelenti, hogy a klasszikus modellekkel ellentétben, mint például a Waterfall modell egy egyszerű, de működőképes, tesztelhető változatot készít, amelyet aztán finomít, formál.
Egyedi szoftverfejlesztés
Az egyedi szoftver egy személyre szabott megoldás, ahol lehetőségünk van a technológiai és funkcionális követelményeket úgy kialakítani, hogy az kompromisszumok nélkül megfeleljen az ügyfél igényeinek. Ez lehet egy teljesen új alkalmazás korszerűsítése vagy egy meglévő rendszer fejlesztése, amely:
- képes emelni a termelékenységet,
- több ügyfelet érhet el és szolgálhat ki,
- gyorsabbá és hatékonyabbá teszi a napi üzleti folyamatokat.