• Save
Complexity theory and software development : Tim Berglund
Upcoming SlideShare
Loading in...5
×
 

Complexity theory and software development : Tim Berglund

on

  • 1,401 views

Some systems are too large to be understood entirely by any one human mind. They are composed of a diverse array of individual components capable of interacting with each other and adapting to a ...

Some systems are too large to be understood entirely by any one human mind. They are composed of a diverse array of individual components capable of interacting with each other and adapting to a changing environment. As systems, they produce behavior that differs in kind from the behavior of their components. Complexity Theory is an emerging discipline that seeks to describe such phenomena previously encountered in biology, sociology, economics, and other disciplines. Beyond new ways of looking at ant colonies, fashion trends, and national economies, complexity theory promises powerful insights to software development. The Internet—perhaps the most valuable piece of computing infrastructure of the present day—may fit the description of a complex system. Large corporate organizations in which developers are employed have complex characteristics. In this session, we'll explore what makes a complex system, what advantages complexity has to offer us, and how to harness these in the systems we build.

Statistics

Views

Total Views
1,401
Views on SlideShare
1,395
Embed Views
6

Actions

Likes
3
Downloads
0
Comments
1

2 Embeds 6

http://lanyrd.com 5
https://twitter.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
  • I remember seeing this talk at JavaZone 2011 and it blew my mind. I love seeing these 'big ideas' talks - they are way too seldomly presentated at conferences, but have the potential to really transgress technology boundaries.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Complexity theory and software development : Tim Berglund Complexity theory and software development : Tim Berglund Presentation Transcript

  • COMPLEXITY THEORY SOFTWARE DEVELOPMENT and @tlberglundWednesday, October 17, 12 1
  • Agents Landscapes Emergence Complexity Criticality ConnectednessWednesday, October 17, 12 2
  • AgentsWednesday, October 17, 12 3
  • Agents are... Simple Interactive AdaptiveWednesday, October 17, 12 4
  • Why Does TRAFFIC Jam?Wednesday, October 17, 12 5
  • Stuck in TRAFFIC Talking on cell phone, not paying attention... I sure am in all this a hurry! space! Ima speed up.Wednesday, October 17, 12 6
  • Stuck TRAFFIC in maniAc! Oh, my bad. @%$#%!Wednesday, October 17, 12 7
  • Net LOGO http://ccl.northwestern.edu/netlogo/Wednesday, October 17, 12 8
  • Net LOGOWednesday, October 17, 12 9
  • Net LOGO Flocking Alignment: a bird tends to move in the same direction of nearby birds. Separation: a bird will turn to avoid another bird if they get too close. Cohesion: a bird will tend to move towards other nearby birds.Wednesday, October 17, 12 10
  • Net LOGOWednesday, October 17, 12 11
  • Agents Landscapes Emergence Complexity Criticality ConnectednessWednesday, October 17, 12 12
  • LandscapesWednesday, October 17, 12 13
  • Think of a Problem as a SURFACEWednesday, October 17, 12 14
  • MT. FUJIWednesday, October 17, 12 15
  • Frederick Winslow TAYLORWednesday, October 17, 12 16
  • RUGGED LANDSCAPESWednesday, October 17, 12 17
  • Dancing LANDSCAPESWednesday, October 17, 12 18
  • Agents Landscapes Emergence Complexity Criticality ConnectednessWednesday, October 17, 12 19
  • CriticalityWednesday, October 17, 12 20
  • the Normal DISTRIBUTIONWednesday, October 17, 12 21
  • the Power Law DISTRIBUTIONWednesday, October 17, 12 22
  • Wednesday, October 17, 12 Rice PILES 23
  • Work LOADWednesday, October 17, 12 24
  • Work LOADWednesday, October 17, 12 25
  • Work LOADWednesday, October 17, 12 26
  • Work LOADWednesday, October 17, 12 27
  • Work LOADWednesday, October 17, 12 28
  • Work LOADWednesday, October 17, 12 29
  • Work LOADWednesday, October 17, 12 30
  • Work LOADWednesday, October 17, 12 31
  • Work LOADWednesday, October 17, 12 32
  • Work LOADWednesday, October 17, 12 33
  • Too much Utilization leads to CRITICALITYWednesday, October 17, 12 34
  • Agents Landscapes Emergence Complexity Criticality ConnectednessWednesday, October 17, 12 35
  • ConnectednessWednesday, October 17, 12 36
  • A really basic refresher in Graph THEORY Seriously...BASIC.Wednesday, October 17, 12 37
  • Degree 5 Degree 1 Degree 4Wednesday, October 17, 12 38
  • To here From here Path Length= 3Wednesday, October 17, 12 39
  • Network FUNCTIONALITYWednesday, October 17, 12 40
  • Information DIFFUSION depends on Path LengthWednesday, October 17, 12 41
  • Robustness to FAILURE depends on degree distributionWednesday, October 17, 12 42
  • Agents Landscapes Emergence Complexity Criticality ConnectednessWednesday, October 17, 12 43
  • EmergenceWednesday, October 17, 12 44
  • SlimeWednesday, October 17, 12 MOLD 45
  • Slime Mold EmergenceWednesday, October 17, 12 46
  • Conway’s Game ofWednesday, October 17, 12 LIFE 47
  • Gameof Conway’s LIFE 1. Any live cell with fewer than two live neighbours dies. 2. Any live cell with more than three live neighbours dies. 3. Any live cell with two or three live neighbors lives. 4. Any dead cell with exactly three live neighbors comes to life.Wednesday, October 17, 12 48
  • Wednesday, October 17, 12 49
  • Wednesday, October 17, 12 50
  • Wednesday, October 17, 12 51
  • Surprise! it’s a COMPUTERWednesday, October 17, 12 52
  • Von Neumann ARCHITECTUREWednesday, October 17, 12 53
  • Wednesday, October 17, 12 54
  • Wednesday, October 17, 12 55
  • Ant COLONIESWednesday, October 17, 12 56
  • Wednesday, October 17, 12 57
  • Proceed with CAUTIONWednesday, October 17, 12 58
  • Software as a COMPLEX ProfessionWednesday, October 17, 12 59
  • AGENT- BASED DECISION MAKINGWednesday, October 17, 12 60
  • Wednesday, October 17, 12 61
  • What kind of Software Architecture would look like an ANTWednesday, October 17, 12 COLONY? 62
  • Wednesday, October 17, 12 63
  • Wednesday, October 17, 12 64
  • Hypertext as the Engine of APPLICATION STATE http://bit.ly/HATEOASWednesday, October 17, 12 65
  • the way HATEOAS Works GET /sandwich Service Web ServiceWednesday, October 17, 12 66
  • HATEOAS the way Works Service 400 ERROR <link rel=”bread” /> <link rel=”ingredient” /> Web ServiceWednesday, October 17, 12 67
  • HATEOAS the way Works POST /sandwich bread=rye Service meat=pastrami Web ServiceWednesday, October 17, 12 68
  • HATEOAS the way Works Service 201 OK <link href=”sandwich”> <link href=”eat” /> <link href=”side” /> Web ServiceWednesday, October 17, 12 69
  • Make me a Add Toppings Sandwich I make Give me a sandwiches. sandwich, and I can decorate it with toppings. I exchange sandwiches I toast Federal for sandwichReserve buns.Notes. Checkout Toast BunWednesday, October 17, 12 70
  • REST done RIGHTWednesday, October 17, 12 71
  • Class Are your Dependencies like a RICE PILE?Wednesday, October 17, 12 72
  • Afferent COUPLING A classs afferent coupling is a measure of how many other classes are coupled to it through method calls, field accesses, inheritance, arguments, return types, and exceptions.Wednesday, October 17, 12 73
  • remember the Power Law DISTRIBUTIONWednesday, October 17, 12 74
  • grails-web 900 675 450 225 0Wednesday, October 17, 12 75
  • Hibernate 3 1500 1125 750 375 0Wednesday, October 17, 12 76
  • Spring 3 Core 300 225 150 75 0Wednesday, October 17, 12 77
  • toward a COMPLEX THEORY of SOFTWARE DEVELOPMENTWednesday, October 17, 12 78
  • Agents Landscapes Emergence Complexity Criticality ConnectednessWednesday, October 17, 12 79
  • Thank You Tim Berglund tlberglund@github.com @tlberglundWednesday, October 17, 12 80
  • ACKNOWLEDGMENTS http://bit.ly/unde rstanding-compl exityWednesday, October 17, 12 81
  • Photo Credits Slime Mold Cells http://campus.queens.edu/faculty/jannr/Botany/images/slimies/slimeMolds/slimeMold1152.jpg Car Top View http://www.motiontrends.com/2006/m09/Volvo/C30.shtml Ants http://www.flickr.com/photos/binux/2495709841 Traffic Jam http://www.flickr.com/photos/lynac/321100379/ Turning Machine http://www.ecs.syr.edu/faculty/fawcett/handouts/webpages/CoreTechnologies.htm VonNeumann Machine http://en.wikipedia.org/wiki/File:Von_Neumann_architecture.svg Ant Colony http://www.bioone.org/doi/full/10.1672/1536-2442%282004%29004%5B0001%3ATNAOTF%5D2.0.CO%3B2 Mt. Fuji http://www.flickr.com/photos/mtsn/229410448 Snowy Mountains http://www.flickr.com/photos/huzhead/85362599 Portrait of Frederick Winslow Taylor http://upload.wikimedia.org/wikipedia/commons/9/90/Frederick_Winslow_Taylor_crop.jpg Female Velvet Ant (in Work Load Illustration) http://www.flickr.com/photos/markop/1036891509 Frederick Hayek http://www.lancs.ac.uk/staff/ecagrs/Hayek%20quotes.htmWednesday, October 17, 12 82