mirror of
https://github.com/inf112-v20/Fiasko.git
synced 2025-02-07 18:49:34 +01:00
Skrevet ferdig Oblig3.md
Lagt til screenshot av prosjekttavle. Lagt til klassediagram for oblig3.
This commit is contained in:
parent
8429963c9b
commit
f6a79a9d5e
@ -5,41 +5,54 @@
|
|||||||
Rollefordelingen i teamet fungerer fint sånn som vi har det.
|
Rollefordelingen i teamet fungerer fint sånn som vi har det.
|
||||||
|
|
||||||
### Erfaringer
|
### Erfaringer
|
||||||
Siden vi har fra begynnelsen av prosjektet valgt å ha noen av møtene og parprogrammeringsøktene våre på Discord,
|
Siden vi fra begynnelsen av prosjektet har valgt å ha noen av møtene og parprogrammeringsøktene våre på Discord,
|
||||||
var vi bedre rustet til utfordringene som kom med SARS-CoV-2 pandemien og de inførte restriksjoner
|
var vi bedre rustet til utfordringene som kom med SARS-CoV-2 pandemien og de innførte restriksjoner det har medført.
|
||||||
det har medbragt.
|
|
||||||
|
|
||||||
### Retrospektiv
|
### Retrospektiv
|
||||||
#### Plan
|
#### Plan
|
||||||
Det vi planlagte var å ha to fysiske møter og ett digitalt møte per korte sprint (en uke)
|
Det vi planlagte var å ha to fysiske møter og ett digitalt møte per korte sprint (en uke) for parprogrammering,
|
||||||
for parprogrammering, planlegging og generell diskusjon rundt prosjektet.\
|
planlegging og generell diskusjon rundt prosjektet.\
|
||||||
Vi planlagte også å lage ferdig alle brukerhistoriene, akseptansekravene og
|
Vi planlagte også å lage ferdig alle brukerhistoriene, akseptansekravene og
|
||||||
arbeidsoppgavene før vi begynte noe av kodearbeidet.\
|
arbeidsoppgavene før vi begynte noe av kodearbeidet.\
|
||||||
Arbeidsoppgaver skulle settes opp som issues i prosjektet på GitHub med gode beskrivelser
|
Arbeidsoppgaver skulle settes opp som issues i prosjektet på GitHub med gode beskrivelser
|
||||||
for så å legges til prosjekttavlen. Når noen i teamet skal begynne på en ny arbeidsoppgave
|
for så å legges til prosjekttavlen. Når noen i teamet skal begynne på en ny arbeidsoppgave
|
||||||
legger de seg til i oppgaven på prosjekttavlen for så å flytte oppgaven fra To do til In progress kolonnen.
|
legger de seg til i oppgaven på prosjekttavlen for så å flytte oppgaven fra "To do" kolonnen til "In progress" kolonnen.
|
||||||
|
|
||||||
#### Gjennomførelse
|
#### Gjennomførelse
|
||||||
Vi har hatt noen fysiske møter før SARS-CoV-2 krisen startet. Disse gikk med til en del planlegging
|
Vi har hatt noen fysiske møter før SARS-CoV-2 krisen startet. Disse gikk med til en del planlegging
|
||||||
og jobbing med brukerhistorier. Etter dette beholdt vi møtetids oppsettet men alle møter ble digitale.\
|
og jobbing med brukerhistorier. Etter dette beholdt vi de satte møtetidene våre men alle møter ble digitale.\
|
||||||
I denne sprinten har vi brukt en del digital parprogrammering med skjermdeling som har fungert bra for oss.\
|
I denne sprinten har vi brukt en del digital parprogrammering med skjermdeling som har fungert bra for oss.\
|
||||||
Ellers har vi gjennomført planen som planlagt.
|
Ellers har vi gjennomført planen som planlagt.
|
||||||
|
|
||||||
#### Forbedringspunkter
|
#### Forbedringspunkter
|
||||||
* Forbedre bruk av tester. Bruke mer test driven development. Vi har til nå skrevet teser etter vi har skrevet kode
|
* Forbedre bruk av tester. Bruke mer Test Driven Development. Vi har til nå skrevet tester etter vi har skrevet kode
|
||||||
noe som har ført til noen bugs som kanskje kunne vært unngått med tdd.
|
noe som har ført til noen bugs som kanskje kunne vært unngått med TDD.
|
||||||
|
|
||||||
### Prioritering av oppgaver
|
### Prioritering av oppgaver
|
||||||
Vi må bli ferdig med runder og kortvelging først. Etter dette prioriterer vi å få nettverksfunksjonaliteten på plass.
|
* Vi prioriterer implementeringen av funksjonalitetene i spillet fra bunnen og opp og vi føler nå at vi kan
|
||||||
Til slutt vil vi prioritere det grafiske og eventulle nice to haves.
|
begynne med implementasjon av faser og funksjonalitet faser trenger.
|
||||||
|
|
||||||
|
* Til neste oblig må vi bli ferdig med runder og kortvelging først. Etter dette prioriterer vi å få
|
||||||
|
nettverksfunksjonaliteten på plass. Til slutt vil vi prioritere det grafiske og eventuelle nice to haves.
|
||||||
|
|
||||||
|
![PNG](../Deliverables/Screenshots/Prosjekttavle_26_03_2020.PNG "Skjermdump prosjekttavle")
|
||||||
|
|
||||||
### Gruppedynamikk og kommunikasjon
|
### Gruppedynamikk og kommunikasjon
|
||||||
Vi har noen uenigheter når det gjelder effektiv tidsbruk på møter og hvor mye tid hver enkelt skal bruke på
|
* Vi har noen uenigheter når det gjelder effektiv tidsbruk på møter og hvor mye tid hver enkelt skal bruke på
|
||||||
prosjektet ut over de fastsatte møtetidene som utgjør ca 8 timer i uken.
|
prosjektet ut over de fastsatte møtetidene som utgjør ca. 8 timer i uken.\
|
||||||
|
|
||||||
|
* Siden vi har brukt gruppe og parprogrammering siden starten har kunnskapsoverføring skjedd på denne måten.
|
||||||
|
|
||||||
## Deloppgave 2
|
## Deloppgave 2
|
||||||
### Krav
|
### Krav
|
||||||
Implementere fase og alt av funksjoner en fase kommer til trenge.
|
Implementere faser og alt av funksjonalitet en fase trenger.
|
||||||
|
* Implementere programmeringskort.
|
||||||
|
* Implementere kortstokk.
|
||||||
|
* Implementere lasere.
|
||||||
|
* Implementere visning av laser avfyring.
|
||||||
|
* Implementere transportbånd.
|
||||||
|
* Implementere roterende tannhjul.
|
||||||
|
* Implementere registrering av besøkte flagg.
|
||||||
|
|
||||||
### Brukerhistorier og akseptansekrav
|
### Brukerhistorier og akseptansekrav
|
||||||
|
|
||||||
@ -50,16 +63,16 @@ Implementere fase og alt av funksjoner en fase kommer til trenge.
|
|||||||
* Programmeringskort har en handling og en prioritet.
|
* Programmeringskort har en handling og en prioritet.
|
||||||
|
|
||||||
* Som spiller trenger jeg et program for å fortelle roboten min hva den skal gjøre i løpet av en runde.
|
* Som spiller trenger jeg et program for å fortelle roboten min hva den skal gjøre i løpet av en runde.
|
||||||
* Spilleren har et funksjonellt program.
|
* Spilleren har et funksjonelt program.
|
||||||
* Skal kunne hente ut programmet fra en spiller.
|
* Skal kunne hente ut programmet fra en spiller.
|
||||||
|
|
||||||
* Som fase trenger jeg å kunne aktivere andre objekter for å progresere spillet.
|
* Som fase trenger jeg å kunne aktivere andre objekter for å progressere spillet.
|
||||||
* En fase kan gjennomføres.
|
* En fase kan gjennomføres.
|
||||||
* Aktiverte objekter gjør sin funksjon.
|
* Aktiverte objekter gjør sin funksjon.
|
||||||
|
|
||||||
* Som transportbånd trenger jeg å kunne flytte roboter for å gjøre min funksjon.
|
* Som transportbånd trenger jeg å kunne flytte roboter for å gjøre min funksjon.
|
||||||
* Transportbånd flytter robot i gitt retning.
|
* Transportbånd flytter robot i gitt retning.
|
||||||
* Transportbånd kan rotere roboter i spesefikke scenario.
|
* Transportbånd kan rotere roboter i spesifikke scenario.
|
||||||
|
|
||||||
* Som fase trenger jeg å kunne kjøre programmeringskort etter høyest verdi for å bestemme
|
* Som fase trenger jeg å kunne kjøre programmeringskort etter høyest verdi for å bestemme
|
||||||
rekkefølgen på trekkene til robotene.
|
rekkefølgen på trekkene til robotene.
|
||||||
@ -67,20 +80,23 @@ Implementere fase og alt av funksjoner en fase kommer til trenge.
|
|||||||
* Programmeringskort er sorterbare.
|
* Programmeringskort er sorterbare.
|
||||||
* Programmeringskort kan hentes og gis videre.
|
* Programmeringskort kan hentes og gis videre.
|
||||||
|
|
||||||
* Som tannhjul trenger jeg å kunen snu roboter for gjennomføre min funksjon.
|
* Som tannhjul trenger jeg å kunne snu roboter for gjennomføre min funksjon.
|
||||||
* Tannhjul vrir roboter som står på de 90 grader i retningen tannhjulet har.
|
* Tannhjul vrir roboter som står på de 90 grader i retningen tannhjulet har.
|
||||||
|
|
||||||
* Som laser trenger jeg å kunne avfyre laseren min for å gjøre skade på roboter.
|
* Som laser trenger jeg å kunne avfyre laseren min for å gjøre skade på roboter.
|
||||||
* Laser skyter i en rett linje i den rettningen laseren har.
|
* Laser skyter i en rett linje i den retningen laseren har.
|
||||||
* Laseren blir stoppet av vegger og andre roboter.
|
* Laseren blir stoppet av vegger og andre roboter.
|
||||||
* Laseren gjør skade på roboten den treffer.
|
* Laseren gjør skade på roboten den treffer.
|
||||||
|
|
||||||
* Som spiller trenger jeg å kunne registrere flagg for å kunne vinne spillet.
|
* Som spiller trenger jeg å kunne registrere flagg for å kunne vinne spillet.
|
||||||
* Ved slutten av en fase vil roboter som står på et flagg få oppdatert currentflagg verdien sin,
|
* Ved slutten av en fase vil roboter som står på et flagg få oppdatert currentflagg verdien sin,
|
||||||
gitt at den har besøkt det forige flagget.
|
gitt at den har besøkt det forrige flagget.
|
||||||
|
|
||||||
* Spilleren vinner når alle flagg er besøkt i rett rekkefølge.
|
* Spilleren vinner når alle flagg er besøkt i rett rekkefølge.
|
||||||
|
|
||||||
|
* Som spiller trenger jeg å kunne se laserstrålen på brettet for å kunne vite hvor den treffer.
|
||||||
|
* Laserstrålen er synlig på brettet når den blir avfyrt.
|
||||||
|
|
||||||
### Arbeidsoppgaver
|
### Arbeidsoppgaver
|
||||||
#### Spiller
|
#### Spiller
|
||||||
* Lag en klasse som representerer en kortstokk.
|
* Lag en klasse som representerer en kortstokk.
|
||||||
@ -92,8 +108,22 @@ Implementere fase og alt av funksjoner en fase kommer til trenge.
|
|||||||
* Legg til funksjon for å sortere programmeringskort ut ifra høyest verdi.
|
* Legg til funksjon for å sortere programmeringskort ut ifra høyest verdi.
|
||||||
* Legg til funksjon for å aktivere tannhjul.
|
* Legg til funksjon for å aktivere tannhjul.
|
||||||
* Lage en funksjon for å fyre av en laser i en retning.
|
* Lage en funksjon for å fyre av en laser i en retning.
|
||||||
|
* Legg til visning av laseravfyring.
|
||||||
* Legg til en funksjon for å sjekke om en robot står på et flagg.
|
* Legg til en funksjon for å sjekke om en robot står på et flagg.
|
||||||
* Legg til en funksjon for å sjekke om roboten har besøkt forige flagg.
|
* Legg til en funksjon for å sjekke om roboten har besøkt forrige flagg.
|
||||||
* Legg til en funksjon som sjekker flagstatus til en robot.
|
* Legg til en funksjon som sjekker flaggstatus til en robot.
|
||||||
* Legge til funksjon for å aktivere transportbånd.
|
* Legge til funksjon for å aktivere transportbånd.
|
||||||
* Legg til en fase i robotrallygame som aktiverer alle objekter som skal bli aktivert i en fase.
|
* Legg til en fase i robotrallygame som aktiverer alle objekter som skal bli aktivert i en fase.
|
||||||
|
|
||||||
|
### Hovedkrav for MVP
|
||||||
|
* Alle krav vi har jobbet med er en del av MVP med unntak av visningen av laseravfyring.
|
||||||
|
* Spillet trenger faser for å virke sånn som det skal.
|
||||||
|
* Alle kravene vi har jobbet med anser vi som viktige deler av en fase.
|
||||||
|
|
||||||
|
## Deloppgave 3
|
||||||
|
### Commitsfordeling
|
||||||
|
Vi har brukt en del parprogrammering og har derfor noe skjevfordeling av commits. Vi har stort sett kommentert hvem
|
||||||
|
som har programmert sammen i commitmeldingen.
|
||||||
|
|
||||||
|
## UML
|
||||||
|
![UML](../Deliverables/Umls/UmlOblig3.png "UML Oblig 3")
|
BIN
Deliverables/Screenshots/Prosjekttavle_26_03_2020.PNG
Normal file
BIN
Deliverables/Screenshots/Prosjekttavle_26_03_2020.PNG
Normal file
Binary file not shown.
After Width: | Height: | Size: 117 KiB |
BIN
Deliverables/Umls/UmlOblig3.png
Normal file
BIN
Deliverables/Umls/UmlOblig3.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 172 KiB |
Loading…
x
Reference in New Issue
Block a user