Velkommen til DDU
Digitalt design og udvikling teknikfag - Lyngby - HCØ HTX
Hvad er DDU
Teknikfaget "Digitalt design og udvikling", forkortet DDU, fokuserer på softwareudvikling i den størst mulige skala man kan møde på en dansk gymnasial uddannelse. Faget er hovedsageligt projektorienteret og problembaseret, men der forekommer kortere forløb med fokus på faglighed. Projekter laves i grupper fra 2 til 4 personer, hvis andet ikke er aftalt. Projekterne kan tidsmæssigt strække sig fra 10 undervisningstimer og helt op til 90 undervisningstimer. Viden og færdigheder tilegnes igennem selvstændigt studie og problemløsning. Underviserne giver feedback og rådgiver løbende med fokus på det udførte arbejde. God arbejdsdiciplin og studiekompetencer er derfor et must for at opnå et godt resultat.
Temaer
Projektstyring
Fordybelsesområdet er projektstyring indenfor professionel softwareudvikling. Dette er det meget vigtigt tema i faget.
Spiludvikling
Første valgtema, som skolen har valgt er Spiludvikling. Temaet spiludvikling fokusere på hvordan man anvender en game-engine til at lave computerspil. Vi har valgt Godot_engine version. 4.4.1 , da det er en god opensource engine der kan køre på stort set alle enheder.
Datamodeller
Andet valgtema, som skolen har valgt er Datamodeller Vi har fokus på relationelle databaser og typiske anvendelsesområder som login systemer.
Nøgletemaer
Nøgletemaerne indgår ofte automatisk og eksisterer ofte ikke som selvstændige forløb. Nøgletemaerne er følgende: datasikkerhed, it-værktøjer, interaktionsdesign, prototyper, produkttestning og automatisering.
Projektarbejde i DDU
Før realisering
Før-realisering er alt det, der skal laves inden man går i gang med selve udviklingen af produktet. Denne fase er meget vigtig og fylder op imod en tredjedel af projektets samlede tid. Når faserne er gennemløbet afleveres projektbeskrivelsen, der dokumenterer det arbejde der er udført i før-realiseringsfasen. Projektbeskrivelsen skal godkendes inden realiseringsfasen kan påbegyndes.
Underfaserne i før-relaliseringsfasen kender man fra faget teknologi, og består af følgende:
- Problemidentifikation, indeholder problemafgrænsning og problemformulering
- Problemanalyse, hvor problemet undersøges og man gør rede for vigtigste faktorer
- Produktprincip, her opstilles krav og præsenteres forskellige løsningsforslag
- Produktudformning, endelig løsning og opstilling af designspec.& kravspec.
- Produkforberedelse, de valgte teknologier/tech stack og værktøjer
Realisering
Selve realiseringsfasen er den fase hvor produktet udvikles. I ddu arbejdes iterativt. Hver iteration består af følgende underfaser:
- analyse
- ide
- koncept/design
- produktion (se afsnit nedenfor)
- undersøgelse.
Produktion - en del af realiseringsfasen
I realiseringsfasen foregår produktionen, som er den egnetlige softwareudvikling. Indenfor professionel softwareudvikling er planlægning og test essentielt for at overholde både budget og deadlines. I DDU på Lyngby HCØ anvendes de mest almindelige metoder indenfor software planlægning og test. Hovedformålet er at få en grundlæggende forståelse for hvordan professionelle softwareudviklingsprojekter bliver gennemført. Faget anvender følgende metoder og værktøjer:
- Papir prototype, anvendes i projektopstart
- User stories, en ikke-teknisk beskrivelse af produkt-krav
- Objektorienteret analyse og design Inden user-stories opdeles i tasks bør man planlægge kodens struktur se: http://javabog.dk/OOP/kapitel22.jsp
- Task, User stories opslittes i tasks, der tidsestimeres
- Iterationer en slags tidsbegrænsede underprojekter, der hver afsluttes med test og evaluering
- Burndown chart, til kontrollere projektarbejdets progression
- GitHub, anvendes til planlægning, versionsstyring
- Kvantitative og kvalitative brugertests
Projekter og forløb
Nedenfor ses nuværende rækkefølge af projekter og forløb [3].
uge | emne[1] | timer[2] | aflevering | andet |
---|---|---|---|---|
33 | opstart & kodning | 4 m | ||
33-34 | kodning | 10 m | opstart aula d. 13/8 | |
35-36 | engine | 11 m | aula opstart? | |
37 | grafik, interaktivdesign & tilemaps | 7 m | aula opstart? | |
38 | 2D-spil v.1 | 35 m / 15 et | produkt | opstart aula d. 15/9 |
39-41 | 2D-spil v.2 - med projektstyring | 18 m | produkt | opstart aula d. 22/9 |
41 | databaser | 3 m | (produkt efter efterårsferien) | opstart aula d. 8/10 |
42 | efterårsferie | |||
43 | databaser fortsat | 7 m | produkt | |
44 | minieksamensprojekt præproduktion | 7 m | projektbeskrivelse & gdd | d. 30/10 |
45-48 | minieksamensprojekt produktion | ? m / 7 et | produkt & rapport | |
49-50 | sop | |||
51 | sikkerhed 1 | ? m | d. 16/12 | |
52-1 | juleferie | |||
2-3 | grafik og modeller 3D | ? m | d. 6/1 | |
4 | sop eksamen | |||
5 | databasesikkerhed (sikkerhed 2) | ? m | d. 27/1 | |
6 | terminsprøver | |||
7 | vinterferie | |||
8-18 | [Eksamensprojekt] | ? m | d.17/2 i aula | |
19 | [Aflev. 5/5 Lectio + 6/5 udprint admin] | 6 m / ca. 40 et | produkt+rapport |
[1]: tryk på titlen for emnet for at se foløbsplan
[2]: "m" står for moduler og "et" står for elevtimer
[3]: ikke alle forløb er opdateret i starten af skoleåret så forløbene kan/vil ændre sig
Eksamensprojekt eksamen grupper og statusmøder
-Opdateres senere...
Materialer
- from zero : Learning gdscript from zero, interaktiv bog/app
- docs 4.4 : Godot engine dokumentation
- godot beginner : Godot Game Development for Beginners, af Daniel Buckley
- ddu-systime : Bogen digital design og udvikling fra Systime
- computerspil teori : Bogen computerspil fra Systime
- design of everyday things : The design of every day things, af Don Norman
- technology as Experience : af John McCarthy + Peter Wright
- the UX Book- Process and Guidelines for Ensuring a Quality User Experience : The UX Book
Brugertest
Når vi ser det fra et matematisk synspunkt, kan det desværre være nødvendigt at udføre et stort antal brugertests for at kunne vurdere statistisk signifikans. Dette kan være både uoverkommeligt og uhensigtsmæssigt inden for et fag som "digitalt design og udvikling". Ikke desto mindre er vores holdning til brugertests, at det altid er bedre at teste end slet ikke at teste.
Årsagen hertil er, at bare en enkelt dygtig testperson kan opdage mange ting, som produktudviklere måske ikke selv ser, da de kan være påvirket af bias. Som minimum bør man dog stræbe efter 5 testpersoner og altid forsøge at finde testpersoner som man ikke har nogen relation til. Det sidste kan være svært, men gør testen betydelig mere pålidelig ( personer man kender siger ikke altid sandheden :-) ).
En anden person, der deler vores synspunkt, er forfatteren Morten Münster, som du kan læse mere om i følgende blogindlæg: https://larskjensen.dk/anmeldelse-jytte-fra-marketing-er-desvaerre-gaaet-for-i-dag-en-bog-om-adfaerdsdesign/
Rapporten og dokumentation
Dokumentation er vigtigt når man laver projektarbejde - og til teknikfagseksamen spiller rapporten derfor en stor rolle.
Her er et forslag til opbygning af rapporten og tekniske diagrammer:
Værktøjer & Sprog
Nedenfor ses en liste over links til værktøjer vi bruger i faget (der kan forekomme tilføjelser):
- Download Godot
- SignUp GitHub
- Download GitHub Desktop
Karaktergivning
Alle afleveringer er karaktergivende. Alle afleveringer bedømmes med udgangspunkt i temaet "Professionel softwareudvikling". Vigtige kriterier i bedømmelse af både opgaveafleveringer og projekter er:
- Deadline er overholdt, dvs. endelig afleveringstidspunkt
- Produktet kan starte og anvendes direkte af brugeren, uden konsultation hos en ekspert
- Produktet er veldesignet, intuitivt og nemt at bruge
- Produktet virker efter hensigten