Designmønster er en generell løsning til problem som ofte oppstår i programvareutvikling. Dette blir spesielt brukt i programvarearkitektur, når designet av et datasystem er under utvikling.

Mønsteret er organisert slik at det optimerer designet på systemet etter en eller flere av kvalitetsattributter som: ytelse, forutsigbarhet (engelsk predictability), fordelbarhet (engelsk schedulability), gjennomstrømbarhet (engelsk throughput), pålitelighet, sikkerhet, gjenbrukbarhet, distribuerbarhet, portabilitet, vedlikehold, skalerbarhet, kompleksitet, ressursbruk, energibruk og utviklingskostnader.

Et designmønster inneholder som regel:

  • En overordnet beskrivelse av problemet
  • Strukturmessig beskrivelse, gjerne med hjelp av UML-diagrammer
  • Kosekvenser av avveiing (engelsk trade-off)
  • Implementasjonsstrategier
  • Relaterte/liknende mønstre
  • Eksempel-implementasjon

Se også rediger

Eksterne lenker rediger