the emergent nature of software systems

48

Click here to load reader

Upload: tudor-girba

Post on 16-Apr-2017

2.161 views

Category:

Software


1 download

TRANSCRIPT

Page 1: The emergent nature of software systems

Software systems have emergent structures.

Page 2: The emergent nature of software systems

Software systems are irregular.

Page 3: The emergent nature of software systems

Software systems are contextual.

Page 4: The emergent nature of software systems

Software systems are intricate.

Page 5: The emergent nature of software systems

text

Page 6: The emergent nature of software systems

This is a real software system.

Page 7: The emergent nature of software systems

It is irregular.

Page 8: The emergent nature of software systems

It is contextual.

Page 9: The emergent nature of software systems

It is intricate.

Page 10: The emergent nature of software systems

Its structure emerges out all its tiny details.

Page 11: The emergent nature of software systems

This is another real software system.

Page 12: The emergent nature of software systems

It is irregular.

Page 13: The emergent nature of software systems

It is contextual.

Page 14: The emergent nature of software systems

It is intricate.

Page 15: The emergent nature of software systems

These two systems come from different domains.

Page 16: The emergent nature of software systems

And they have radically different shapes.

Page 17: The emergent nature of software systems

But, why do they look so different?

Page 18: The emergent nature of software systems

Is it only because they come from different domains?

Page 19: The emergent nature of software systems

Let’s take a step back.

Page 20: The emergent nature of software systems

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

Page 21: The emergent nature of software systems

The class exhibits a rather regular shape.

Page 22: The emergent nature of software systems

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

Page 23: The emergent nature of software systems

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

Page 24: The emergent nature of software systems

Add some more, and the shape shifts even more.

Page 25: The emergent nature of software systems

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

Page 26: The emergent nature of software systems

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

Page 27: The emergent nature of software systems

This is a tiny system.

Page 28: The emergent nature of software systems

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

Page 29: The emergent nature of software systems

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

Page 30: The emergent nature of software systems

In fact, both systems have similar functionality.

Page 31: The emergent nature of software systems

Yet, they have radically different shapes.

Page 32: The emergent nature of software systems

These three systems also have similar functionality.

Page 33: The emergent nature of software systems

And these two systems have similar functionality, too.

Page 34: The emergent nature of software systems

Yet, they have radically different shapes.

Page 35: The emergent nature of software systems

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

Page 36: The emergent nature of software systems

Because software systems are irregular.

Page 37: The emergent nature of software systems

Software systems are contextual.

Page 38: The emergent nature of software systems

Software systems are intricate.

Page 39: The emergent nature of software systems

Software systems have emergent structures.

Page 40: The emergent nature of software systems

The structure emerges out oftiny independent commits.

Page 41: The emergent nature of software systems

The structure emerges out ofchanges in requirements.

Page 42: The emergent nature of software systems

The structure emerges out ofhuman interaction.

Page 43: The emergent nature of software systems

Software systems have emergent structures.

Page 44: The emergent nature of software systems

Treat software systems for what they are.

Page 45: The emergent nature of software systems

Upfront control is unlikely to work.

Page 46: The emergent nature of software systems

Embrace their emergent nature.

Page 47: The emergent nature of software systems

humane-assessment.com

Page 48: The emergent nature of software systems

Tudor Gîrbawww.tudorgirba.com

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