Bei der Software-Architektur für Produkte wird für eine bestimmte Generation von Geräten oder Anlagen, oft wird auch von Plattformen gesprochen, bestimmt, wie sich die Komponenten Software und Hardware zusammensetzen und wie die Schnittstellen untereinander beschrieben sind. Einfache Architekturmodelle können in semiformalen Sprachen wie UML oder SysML beschrieben/modelliert werden. Aus SysML Modellen kann brauchbarer Softwarecode automatisiert generiert werden.