Les systèmes cyber-physiques (CPS) et socio-techniques (STS, avec également des aspects humains et organisationnels) ont des différences importantes avec le logiciel. Leur ingénierie doit en tenir compte sous peine de sérieuses déconvenues. En particulier, la spécification de leurs exigences ne peut pas se calquer sur celle des logiciels. Pour ces derniers, la spécification est une donnée d'entrée ou au mieux une première phase. Pour les CPS-STS, c'est une activité permamente du processus de conception, voire du cycle de vie. Une erreur grave mais fréquente consiste aussi à confondre spécification du sysème et spécification du logiciel. Enfin, alors qu'on parle d'Ingénierie Dirigée par les Modèles (IDM) en logiciel avec en bout de course, la génération automatique de code, ce ne peut pas être le cas pour les CPS-STS. Pour eux, il convient plutôt de parler d'Ingénierie Assistée par les Modèles, l'objectif premier des modèles étant d'aider à la vérification des exigences et solutions (par la simulation et la vérification formelle), tout en étant conscient qu'un modèle n'est qu'une approximation, et n'est pas toujours juste.