<trol-lol-lol>Nou, als de temperatuur stijgt dan wordt het warm...
</trol-la-la>
Jouw stelling: "Software die (complexe) bedrijfsprocessen ondersteund of automatiseer is daarmee net zo complex."
Laten we doen alsof dat een zwart-wit stelling is. (is niet zo, maar polarisatie is geweldig voor discours

)
Ook kies ik ervoor om "ondersteund" te negeren gezien het open voor interpretatie is wat wel/niet kwalificeert als ondersteunend. (Want cherry-picking in forums is geweldig voor discours

)
Als we een software programma definiëren als een functie/proces waarbij dezelfde input altijd leidt tot hetzelfde resultaat dan wordt de complexiteit van de software bij definitie bepaalt door zijn functie/functie en door de de input (ik beschouw dit een axioma).
Dat betekent ook dat je de complexiteit van software kan zowel positief als negatief kan veranderen door de functie van de software te veranderen of door de input minder te veranderen.
Tot dusver onderbouwt mijn argument jouw stelling. Immers als het "handmatige" proces complex is dan verandert dat niet als het een "automatisch" proces wordt. Alleen de uitvoerder verandert van mens naar computer.
Mijn tegenargument:
De bovenstaande argument gaat alleen op als het om exact hetzelfde proces gaat dat op exact dezelfde manier wordt uitgevoerd. Echter dat is vaak niet het geval. Voorbeeld: Sommige controles in processen zijn alleen nuttig wanneer het een "handmatig" handeling betreft, terwijl sommige controles juist alleen nuttig zijn bij "automatische" handelingen.
Hiermee verandert het gedrag van proces en dus ook de complexiteit.
Op het moment dat we accepteren dat gedeeltes van het proces anders mogen zijn dan kunnen we ook andere procesoptimalisaties uitvoeren. We kunnen dus de complexiteit van het proces reduceren (als dat het doel van de optimalisatie is). Vaak heeft dit wel gevolgen voor andere zaken zoals performance.
Tot dus ver ging ik uit van een groot monolithisch proces waarbij dit soort optimalisaties vaak in de marges zitten. De winst is dan vrij beperkt en zoals ik ook eerder aangaf kan de complexiteit ook groter worden.
Zeker bij een monolithisch proces is dat lastig.
Echter ga je het proces beschouwen als een modular proces dan wordt vergroting op schaal een belangrijk factor in de discussie.
Bij handmatige processen kan je het aantal "actors" (lees: mensen op de werkvloer) veel lastiger schalen. Je bent dus gebaat bij efficiënte mensen die makkelijker complexere functies kunnen uitvoeren. Terwijl bij automatische inefficiënte processen veel makkelijker kan schalen.
Nu ken ik zelf maar weinig 100% geautomatiseerde processen en is er eerder sprake van een hybride proces waarbij 99% automatisch is en 1% handmatig. Die 1% is dan vaak bedoeld voor edgecases/uitval.
Een keuze voor een hybride proces is dan vaak omdat de software (voor de "automatische proces") niet dezelfde mate van complexiteit aankan als de mens (bedoeld voor het "handmatig proces"). Bij een hybride proces is de ook complexiteit ongelijk verdeeld tussen "automatisch" en "handmatig".
* DevWouter gaat alvast koffie zetten en koekjes halen
Moet ik nog popcorn meenemen?
"Doubt—the concern that my views may not be entirely correct—is the true friend of wisdom and (along with empathy, to which it’s related) the greatest enemy of polarization." -- Václav Havel