No asi to bylo špatně mnou formulováno. Tak jinak. Pokud nějakou z povahy deklarativní byznys logiku dáte implementovat, pak z toho vzniknou špagety. Pokud ale dáte implementovat "automat", který bude pracovat s deklaracemi té byznys logiky, prostor pro špagety nebude tak velký.
Logika této úvahy mi stále uniká. Z deklarativní byznys logiky špagety zpravidla nevznikají. Když se však nějaký blb moc snaží, tak ano, ale to je jen výjimka potvrzující pravidlo.
Tak jinak, deklarativní logiku uložíte do xml, nebo databáze, program pak pracuje jen s těmito deklaracemi, nestará se o vlastní byznys logiku, jen o zpracování oněch deklarací. Jde o jiný způsob abstrakce. Pokud dáte byznys logiku implementovat přímo, vzniknou zcela logicky a přirozeně špagety, pokud někdo nemá extra zájem a motivaci, aby nevznikly, ale s vysokou mírou motivace počítat automaticky nemůžete. Ale i to má svá úskalí. Vlastně ty špagety jen schováte do xml. Ale získáte možnost je strojově zpracovávat, což u špaget zapsaných v programovacím jazyku je obtížnější. Bohužel reálný svět, to je samá špageta :-)
Zajímavé je, že dříve i jazyky tak trochu špagetám bránily. Například starý COBOL, ten neměl ani příkaz WHILE, FOR s přilepeným tělem cyklu, ale příkaz PERFORM s odděleným tělem cyklu. viz zde
https://www.tutorialspoint.com/cobol/cobol_loop_statements.htm