[OT] Why software ends up complex

aberba karabutaworld at gmail.com
Mon Dec 14 20:08:42 UTC 2020


On Monday, 14 December 2020 at 15:21:59 UTC, Kagamin wrote:
> https://alexgaynor.net/2020/nov/30/why-software-ends-up-complex/
> I will just copy it at length:
>
> The most natural implementation of any feature request is 
> additive, attempting to leave all other elements of the design 
> in place and simply inserting one new component: a new button 
> in a UI or a new parameter to a function. As this process is 
> repeated, the simplicity of a system is lost and complexity 
> takes its place. This pattern is often particularly obvious in 
> enterprise software, where it’s clear that each new feature was 
> written for one particularly large customer, adding complexity 
> for all the others.

We kind of know but we don't seem to find a solution to this.

>... we need to spend as
> much time thinking about how a new feature will burden all of 
> our users, as we spend thinking about how it will benefit some 
> of our users. We should also spend time thinking about how to 
> design new features in a way that maintains what Fred Brooks’ 
> called the “conceptual integrity” of a system, rather than by 
> merely tacking something new on.

In practice, it's almost impossible to avoid that level of 
complexity that comes from adding new features (glued together 
parts that are nothing like the originally intended design). 
Unless there's a complete/gradual rewrite.



More information about the Digitalmars-d mailing list