KOMMANDE ÄMNESPLAN
Gäller från 1 July 2025

Ämne - Mjukvarudesign

Ämne - Mjukvarudesign

Ämnet mjukvarudesign behandlar, främst på processnivå, hur datorprogram, webbapplikationer och andra mjukvaruapplikationer skapas. Ämnet behandlar även metoder och arbetssätt inom mjukvaruutveckling. Ämnet får bara anordnas i vidareutbildning i form av ett fjärde tekniskt år i gymnasieskolan.

Ämnets syfte

Undervisningen i ämnet mjukvarudesign ska syfta till att eleverna utvecklar kunskaper om mjukvaruutvecklingens olika delar från idé, analys och modellering till driftsättning och förvaltning. Undervisningen ska leda till att eleverna utvecklar förmåga att skapa en mjukvaruprodukt enligt en etablerad metodik och enligt angivna standarder för koden. Vidare ska undervisningen bidra till att eleverna utvecklar kunskaper om möjliga konsekvenser som olika licenser och betalningsformer kan medföra. Undervisningen ska även ge eleverna möjlighet att utveckla förmåga att använda verktyg för såväl utveckling av mjukvara som för samarbete, testning och dokumentation. Genom undervisningen ska eleverna också ges möjlighet att använda begrepp inom området samt att kommunicera om mjukvarudesign.

I undervisningen ska eleverna ges möjlighet att arbeta med olika delar av mjukvarudesign i projektform och med utveckling för olika plattformar. Undervisningen ska även lämna utrymme för diskussion och reflektion över etiska frågor samt olika handlingsalternativ inom mjukvarudesign.

Undervisningen i ämnet mjukvarudesign ska ge eleverna förutsättningar att utveckla följande:
  • Kunskaper om mjukvaruutvecklingens arbetsmetoder och processer.
  • Förmåga att arbeta med utveckling för olika plattformar enligt etablerade principer.
  • Förmåga att konfigurera och använda verktyg för mjukvaruutveckling.
  • Kunskaper om licensfrågor och betalningsmodeller.

Nivåer i ämnet mjukvarudesign

  • Nivå 1, 100 poäng.
  • Nivå 2, 100 poäng, som bygger på nivå 1.

Nivå 1, 100 poäng

Nivåkod: MJUV100TX

Centralt innehåll

Undervisningen i ämnet mjukvarudesign på nivå 1 ska behandla följande centrala innehåll:

Process och metodik

  • Utvecklingsmetodik, däribland någon agil metod och någon traditionell metod.
  • Mjukvarans livscykel från idé, produkt och driftsättning till spridning, förvaltning och avveckling.
  • Analys, nedbrytning och modellering av programmeringstekniska problem med lämpligt analysverktyg, till exempel användningsfall.
  • Design av en lösning utifrån gjord analys med lämpliga verktyg och metoder, till exempel klassdiagram.

Utveckling

  • Paketering och distribution av mjukvara.
  • Översikt över de vanligast förekommande plattformarna och deras egenskaper ur ett utvecklingsperspektiv.
  • Utveckling av någon inbyggd eller mobil plattform.
  • Kodkvalitet och kodstandarder.
  • Grundläggande principer för internationalisering och lokalisering.
  • Upprättande av teknisk dokumentation, till exempel genererat från programkodskommentarer.

Hantering av verktyg

  • Verktyg och principer för versionshantering i mindre sammanhang och projekt.
  • Kodanalys och kvalitetskontroll, däribland bugghantering, felsökningsmetodik, enklare debuggverktyg, automatiserade tester och optimering av enklare karaktär.
  • Verktyg för projekthantering, ärendehantering och samarbete i mindre projektorganisationer.
  • Utvecklingsmiljöer och infrastrukturbehov i projekt av enklare karaktär.

Krav och konsekvenser

  • Licenser och hur licensierad programvara och andra digitala artefakter får användas samt vilka krav och begränsningar som kan följa för ett mindre projekt.
  • Betalningsmodeller för mjukvara.

Nivå 2, 100 poäng

Nivåkod: MJUV200TX

Centralt innehåll

Undervisningen i ämnet mjukvarudesign på nivå 2 ska behandla följande centrala innehåll:

Process och metodik

  • Utvecklingsmetodik, däribland agila och traditionella metoder.
  • Mjukvarans livscykel från idé, produkt och driftsättning till spridning, förvaltning och avveckling.
  • Analys, nedbrytning och modellering av komplexa programmeringstekniska problem med lämpliga analysverktyg.
  • Design och värdering av lösningar utifrån gjord analys med lämpliga verktyg och metoder.

Utveckling

  • Paketering och distribution av mjukvara.
  • Översikt över plattformar och deras egenskaper ur ett utvecklingsperspektiv.
  • Utveckling av några inbyggda och mobila plattformar.
  • Kodkvalitet och kodstandarder.
  • Internationalisering och lokalisering.
  • Upprättande och underhåll av teknisk dokumentation, till exempel genererat från programkodskommentarer.

Hantering av verktyg

  • Verktyg och principer för versionshantering i större organisationer och projekt.
  • Kodanalys och kvalitetskontroll, däribland bugghantering, felsökningsmetodik, debuggverktyg, automatiserade tester och optimering.
  • Verktyg för projekthantering, ärendehantering, mjukvaruhantering och samarbete i större projektorganisationer.
  • Utvecklingsmiljöer och infrastrukturbehov i projekt av mer komplex karaktär.

Krav och konsekvenser

  • Kravhantering, riskhantering och prioritering.
  • Licenser och hur licensierad programvara och andra digitala artefakter får användas samt vilka krav och begränsningar som kan följa för ett projekt av komplex karaktär.

Betygskriterier

Av 15 kap. 24 § andra stycket skollagen (2010:800) följer att läraren vid betygssättningen i ett ämne ska göra en sammantagen bedömning av elevens kunskaper på den aktuella nivån i ämnet i förhållande till de betygskriterier som gäller för ämnet som helhet och sätta det betyg som bäst motsvarar elevens kunskaper. Samtliga kriterier för betyget E ska dock vara uppfyllda för att eleven ska kunna få ett godkänt betyg.

Betyget E

Eleven visar godtagbara kunskaper om mjukvaruutvecklingens arbetsmetoder och processer.

Eleven utvecklar programvara för olika plattformar enligt etablerade principer på ett i huvudsak strukturerat sätt.

Eleven konfigurerar och använder verktyg för mjukvaruutveckling på ett fungerande sätt.

Eleven för godtagbara resonemang om licensfrågor och betalningsmodeller.

Betyget D

Elevens kunskaper bedöms sammantaget vara mellan C och E.

Betyget C

Eleven visar goda kunskaper om mjukvaruutvecklingens arbetsmetoder och processer.

Eleven utvecklar programvara för olika plattformar enligt etablerade principer på ett strukturerat sätt.

Eleven konfigurerar och använder verktyg för mjukvaruutveckling på ett ändamålsenligt sätt.

Eleven för utvecklade resonemang om licensfrågor och betalningsmodeller.

Betyget B

Elevens kunskaper bedöms sammantaget vara mellan A och C.

Betyget A

Eleven visar mycket goda kunskaper om mjukvaruutvecklingens arbetsmetoder och processer.

Eleven utvecklar programvara för olika plattformar enligt etablerade principer på ett välstrukturerat sätt.

Eleven konfigurerar och använder verktyg för mjukvaruutveckling på ett ändamålsenligt och effektivt sätt.

Eleven för välutvecklade resonemang om licensfrågor och betalningsmodeller.


KOMMANDE VERSIONER