the emergent nature of software systems

Post on 16-Apr-2017

2.161 Views

Category:

Software

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Software systems have emergent structures.

Software systems are irregular.

Software systems are contextual.

Software systems are intricate.

text

This is a real software system.

It is irregular.

It is contextual.

It is intricate.

Its structure emerges out all its tiny details.

This is another real software system.

It is irregular.

It is contextual.

It is intricate.

These two systems come from different domains.

And they have radically different shapes.

But, why do they look so different?

Is it only because they come from different domains?

Let’s take a step back.

This visualization shows one class, its methods and its attributes.

The class exhibits a rather regular shape.

Add some collaborator classes to the mix, and its shape changes.

Some of it seems to want to be in a different place.

Add some more, and the shape shifts even more.

Look at the whole system, and the class is unrecognizable.

Look at the whole system, and the class is unrecognizable.

This is a tiny system.

This system is actually the result of only a few man-weeks of work.

This system is also the result of a few man-weeks of work.

In fact, both systems have similar functionality.

Yet, they have radically different shapes.

These three systems also have similar functionality.

And these two systems have similar functionality, too.

Yet, they have radically different shapes.

Why is it that even functionally similar systems look so different?

Because software systems are irregular.

Software systems are contextual.

Software systems are intricate.

Software systems have emergent structures.

The structure emerges out oftiny independent commits.

The structure emerges out ofchanges in requirements.

The structure emerges out ofhuman interaction.

Software systems have emergent structures.

Treat software systems for what they are.

Upfront control is unlikely to work.

Embrace their emergent nature.

humane-assessment.com

Tudor Gîrbawww.tudorgirba.com

creativecommons.org/licenses/by-nc-sa/3.0/

top related