
Agil systemutveckling
Att arbeta iterativt, eller agilt som metoden benämns, ger ett kostnadseffektivt, resultatorienterat och lättadministrerat projekt. Huvudanledningen till att agila projekt tar allt större mark är att mjukvaruutveckling är en komplex process. Arbetet underlättas avsevärt när systemet utvecklas i mindre steg, i vilka kravställningen kan stämmas av och kompletteras löpande.
Man får naturligtvis räkna med att det dyker upp nya krav i iterationerna som påverkar tidsåtgången. Men det blir både enklare och billigare att hantera nya krav på detta sätt i jämförelse med i klassiska vattenfallsprojekt där slutgiltig kravställning och design är fastställd när utvecklingen påbörjas. Ytterligare en fördel med agila projekt är att projektgruppen i sitt nära samarbete ofta kan hitta enklare lösningar på en del ursprungskrav med bibehållen eller till och med större nytta.
ChessITs metodik
ChessIT arbetar med en generisk projektmodell baserad på RUP (Rational Unified Process). Modellen är baserad på mångårig erfarenhet av systemutvecklingsprojekt och fungerar som ett stödjande ramverk för att driva kostnads- och tidseffektiva projekt med fokus på resultat. Genom en aktiv användargrupper redan i ett tidigt skede säkerställs att rätt lösning utarbetas.Förberedelsefas
En målbild för projektet tas fram, alla projektmedlemmar ska känna till målen. Den grundläggande idén om systemet fastställs genom att samla många grundläggande systemkrav. Underlag samlas till stor del in genom Workshops med användargrupper. Det är krav som påverkar systemets arkitektur som är väsentliga att fånga upp, detaljkrav antecknas och hanteras sedan i konstruktionsfasen. Systemets nyckelfunktioner definieras i ett övergripande lösningsförslag och en kandidatsystemarkitektur identifieras och designas.
Systemlösningen modelleras och kommuniceras visuellt med UML (Unified Modeling Language). I ChessITs projektmodell finns det alltid med en systemarkitekt i förberedelsefasen och etableringsfasen. Där skiljer vi oss från en del populära metodiker så som exempelvis Scrum. Vår erfarenhet visar att ett enhetligt och konsekvent designtänk genom hela lösningen avsevärt underlättar både vidareutveckling och förvaltning.
Etablering
En grundläggande arkitektur fastställs, en första projektplan framställs och eventuella större risker i projektet elimineras.Konstruktion
Utvecklingsarbetet bedrivs iterativt. Arbetet delas upp i flera korta utvecklingscykler. För varje cykel så upprepas aktiviteterna kravställning – design – utveckling – test. Det är de detaljerade kraven och den detaljerade designen som hanteras i konstruktionsfasen. Arbetet med krav och design genomförs till stor del i Workshops tillsammans med relevanta användargrupper. Varje utvecklingscykel avslutas med en leverans till ett testsystem som användargrupperna har åtkomst till. Det som har utvecklats förankras och kan vid behov förfinas i senare iteration. Under konstruktionsfasen sker regelbundna leveranser till produktionssystemet. Utbildning av användare sker efterhand nya användargrupper ansluts till systemet. Ofta utbildas personalen av kundens egna projektmedlemmar som genom sitt aktiva deltagande i projektet är väl förtrogna med lösningen.
Överlämning
Vid projektets slut sker överlämning av applikationen till en förvaltningsorganisation.
