410 likes | 564 Vues
Presentation av Ladok3s Tema 0. 2012-09-24, NUAK, Stockholm Bo Sehlberg , lösningsansvarig Daniel Erlandsson, områdesproduktägare Anders Stenebo , användargränssnitt. Agenda över passet. Bakgrund till Tema 0 Kravarbetet Arbetsgången Vad vi gjort under temat
E N D
Presentation av Ladok3s Tema 0 • 2012-09-24, NUAK, Stockholm • Bo Sehlberg, lösningsansvarig • Daniel Erlandsson, områdesproduktägare • Anders Stenebo, användargränssnitt
Agenda över passet • Bakgrund till Tema 0 • Kravarbetet • Arbetsgången • Vad vi gjort under temat • Våra erfarenheter från arbetet • Den kommande arbetsgången • Presentation av lösningen • Visning av användargränssnittet
Bakgrunden till Tema 0 • Lägga grunden för arkitekturen som vi ska bygga vidare på • Genom att: • Bygga en liten del verksamhetsfunktionalitet för flera studieadministrativa processer som Ladok3 ska stödja • Arbeta fram grundläggande domänmodeller • Arbeta fram grunden för användargränssnittet • För att: • Säkerställa att den tilltänkta arkitekturen fungerar • Dessutom: • Prova arbetssättet – dra lärdomar inför framtiden
Kravarbetet • Grunden till kraven på Ladok3 har tagits fram i processbeskrivningar gjorda av verksamhetsrepresentanter • Processbeskrivningarna bearbetas till Epics och UserStories • En Epic är en övergripande beskrivning av vad en användare vill uppnå i ett system • En User Story är en mer detaljrik beskrivning av vad en användare vill uppnå i ett system • Beskrivningarna dokumenteras i en kravförteckning (Product Backlog) • UserStories prioriteras av produktägaren • Eventuella oklarheter i kravförteckningen lämnas för utredning före utvecklingen (Sprinten) startar • UserStories detaljeras (förutsättningar, regler, testfall)
UserStories Som administratör vill jag utifrån en kurs skapa en resultatlista för att kunna rapportera resultat Givet (regler): Att en ny resultatlista med tillståndet "Skapad" ska skapas utifrån registreringar på den kurs som avses. Listan ska innehålla alla studenter som är registrerade på kursen Och att om ytterligare studenter tillkommer som registrerade på kursen efter att resultatlistan upprättas ska de inte automatiskt läggas till den befintliga listan. För att resultatrapportera på dessa studenter ska en ny lista upprättas Och att användaren har rollen administratör eller examinator för kursen Och att man ska kunna spara en lista i tillståndet "Skapad" utan begränsningar Och att endast betygsgrader ingående i kursens betygsskala kan anges Och att när man klarmarkerar en resultatlista så tas alla studenter som man inte betygssatt bort från listan och listan hamnar i tillståndet "Klarmarkerad" Och att en student inte ska kunna finnas på två olika resultatlistor för samma kurs med samma examinationsdatum Och att en student inte ska kunna ingå i en resultatlista (status "Skapad") om denne har ett (godkänt/fastställt) resultat på den kursen Och att examinationsdatum inte får ligga innan datumet för senast godkända modul Och att examinationsdatum måste vara tidigare än beslutsdatum Och att resultat kopplas till kurs. Eventuell relation även till kurstillfälle måste utredas
Arbetsgång • Förberedande domänanalys (övergripande) • Domänanalys (mer detaljerad) • Sprintarbetet (återkommande utvecklingsperiod omfattande tre veckor) • Sprintplanering (planering av sprintens innehåll) • Daily-scrum + VS-scrum (dagligen) • Wiki-arbete (detaljera UserStories) • Teknikmöten (designprinciper och lösningar) • Sprint review (demo av vad som gjorts) • Sprint retrospective (utvärdering av arbetet)
Vad har vi gjort? • Tema 0 - enkelt flöde genom hela systemet • Sprint 1 – Student registrerar (FFG) sig på kurstillfälle • Sprint 2 – Skapa grund för en kurs och ett kurstillfälle • Sprint 3 – Hantera status för kurs och kurstillfälle • Sprint 4 – Rapportera betyg på hel kurs • Sprint 5 – Dokumentera utfärdad examen • Sprint 6 – Underlag för beräkning helårsprestationer(uppföljning – årsredovisning) • Sprint 7 – Erhålla antagningsbeslut, utan villkor, för en student på ett kurstillfälle (förbereda för registrering)
Erfarenheter från arbetet • En fungerande teknisk arkitektur på plats • Bättre framförhållning i detaljering av krav • Bättre framförhållning i utredningar • Upprätta bra och snabb kommunikation inom projektteamet • Hantera decentraliserade arbetsplatser • Hantera begränsad arbetstid inom produktägarorganisationen (deltidskontrakt)
Kommande arbetsgång Riktlinjer Grundstruktur Arbetsflöden Layout
Kommande arbetsgång Bearbeta Epics/US Prioritering Initiera utredningar
Kommande arbetsgång Utreda eventuellaoklarheter
Kommande arbetsgång Skapa nya US baserat påEpics
Kommande arbetsgång Utveckla lösningen
Kommande arbetsgång UtvecklaInformations-konverteraren
Vad vi gjort i tema 0 • Utveckling av grundarkitektur: • Sex autonoma tjänster • Integrationstjänst • Tjänstegränssnitt – REST • Meddelandehantering – Atom feeds • Automatiska tester • Enhetstester • Verksamhetstester • Enkelt temporärt användargränssnitt • Påbörjat informationskonvertering • Hantering av bygg-, test- och demomiljöer • Automatisering
En tjänst i Ladok3 • Hanterar ett verksamhetsområde i studiedokumentationsprocessen • Autonom • Tjänstegränssnitt • Meddelanden • Verksamhetslogik • Lagring • Användargränssnitt
Vad vi utvecklat i tjänsterna i Tema 0 Verksamhetsnytta Infrastruktur
Tema 0 - tjänster • Studentinformation • Skapa student • Hämta ID för pnr • Utbildningsinformation • Skapa grund för och godkänn kurs • Skapa grund för och dokumentera kurstillfälle • Hämta id för kurstillfälle • Studiedeltagande • Ta emot antagning • Registrera på kurstillfälle • Resultat • Skapa kursrapporteringslista • Dokumentera och klarmarkera resultat på kurs • Signera kursrapporteringslista • Definitiv inläggning av kursrapporteringslista • Examen • Dokumentera vilken examen/kurs ett bevis blivit utfärdat för • Uppföljning • Underlag för redovisning för föregående period/år • Etablera • Import av antagningsfil från NyA, skapa student och studiedeltagande
Just nu – september/oktober • Utvärdera, utmana och verifiera arkitekturen • Skapa test- och analysfunktioner • Definiera testfall (prestanda, kapacitet, stabilitet) • Ev. justera utifrån erfarenheter och resultat • Utveckla det riktiga användargränssnittet enligt prototyp • Huvuddragen • Ersätt temporärt mot funktionalitet utvecklad i Tema 0
Vad innebär detaljeringen Skisser Specifikation
Hur arbetar vi med detaljeringen Dialog-skisser Proto-typ Ta fram grundstruktur Detaljera dialoger Godkänna dialoger GUI riktlinjer Dialog-spec.