Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Apeldoorn It 2008 - Adaptiviteit In Software Architectuur

605 views

Published on

At Apeldoorn IT 08, I fell in for our CEO to deliver a talk on adaptivity in software architecture. Oh, wasn't my graduation assignment about that?

Published in: Technology, Education
  • Be the first to comment

  • Be the first to like this

Apeldoorn It 2008 - Adaptiviteit In Software Architectuur

  1. 1. “Great designs come from great designers” - F. P. Brooks Adaptivity in Software Architecture
  2. 2. Who? • Angelo van der Sijpt • Software engineer • Fontys Eindhoven, Computer Science, 2003 • TU Eindhoven, Computer Science and Engineering, 2007 luminis® 2008 - Adaptivity in Software Architecture - Angelo van der Sijpt 2
  3. 3. Who? • luminis • 25 employees • Arnhem, Enschede • Innovative software • In-house and at customer • Share knowledge luminis® 2008 - Adaptivity in Software Architecture - Angelo van der Sijpt 3
  4. 4. Adaptivity in Software Architecture luminis® 2008 - Adaptivity in Software Architecture - Angelo van der Sijpt 4
  5. 5. Associations • Robustness • Intelligence • Scalability • Flexibility • Autonomy luminis® 2008 - Adaptivity in Software Architecture - Angelo van der Sijpt 5
  6. 6. What is adaptivity? • “Any sufficiently advanced technology is indistinguishable from magic.” –Arthur C. Clarke luminis® 2008 - Adaptivity in Software Architecture - Angelo van der Sijpt 6
  7. 7. What is adaptivity? • “Any sufficiently advanced technology is indistinguishable from magic.” –Arthur C. Clarke • Adaptivity is • Something we ‘know when we see it’ • But we cannot point it out • Something desirable luminis® 2008 - Adaptivity in Software Architecture - Angelo van der Sijpt 6
  8. 8. Emergence www.robbaker.org http://en.wikipedia.org/wiki/Internet luminis® 2008 - Adaptivity in Software Architecture - Angelo van der Sijpt 7
  9. 9. Redundancy • What? • Making elements expendable • Current examples • P2P systems, backups, RAID • Issues • No guarantees • How to shut down? luminis® 2008 - Adaptivity in Software Architecture - Angelo van der Sijpt 8
  10. 10. Decoupling • Localizing effects • “Something has to give” http://flickr.com/photos/33006928@N00/32979973/ luminis® 2008 - Adaptivity in Software Architecture - Angelo van der Sijpt 9
  11. 11. Service awareness • Everything is a resource • Use when available, cope when not • Trading, e.g. • correctness for reliability • quality for availability luminis® 2008 - Adaptivity in Software Architecture - Angelo van der Sijpt 10
  12. 12. Parallelizability & Distributability • Some trends • Multi-core systems • Mobile equipment • Increased networking luminis® 2008 - Adaptivity in Software Architecture - Angelo van der Sijpt 11
  13. 13. Scalability Qu ce ali an ty orm of se rf Pe rvi ce Resource consumption luminis® 2008 - Adaptivity in Software Architecture - Angelo van der Sijpt 12
  14. 14. Adaptivity in Software Architecture luminis® 2008 - Adaptivity in Software Architecture - Angelo van der Sijpt 13
  15. 15. A concept • What exactly is a concept? • A fundamental choice of focus • Could be a choice of technology, but underlying this is likely something else. • We can bind concepts together to form styles, • or to form architectures luminis® 2008 - Adaptivity in Software Architecture - Angelo van der Sijpt 14
  16. 16. From concept to architecture luminis® 2008 - Adaptivity in Software Architecture - Angelo van der Sijpt 15
  17. 17. From concept to architecture Style Architecture Concept luminis® 2008 - Adaptivity in Software Architecture - Angelo van der Sijpt 15
  18. 18. From concept to architecture Quality factor Style Architecture Concept Artifact luminis® 2008 - Adaptivity in Software Architecture - Angelo van der Sijpt 15
  19. 19. From concept to architecture Quality factor Nonfunctional Style Architecture Concept Artifact System luminis® 2008 - Adaptivity in Software Architecture - Angelo van der Sijpt 15
  20. 20. Adaptivity and software architecture? • Useful styles • Event based • P2P • SOA • Measurable by concepts, but corresponding with intuition luminis® 2008 - Adaptivity in Software Architecture - Angelo van der Sijpt 16
  21. 21. Adaptivity in Software Architecture luminis® 2008 - Adaptivity in Software Architecture - Angelo van der Sijpt 17
  22. 22. Whoops... • Concepts... • capture intuition, and • are ‘recognizable’ luminis® 2008 - Adaptivity in Software Architecture - Angelo van der Sijpt 18
  23. 23. Whoops... • Concepts... • capture intuition, and • are ‘recognizable’ • But... • are not ‘creatable’, and • do not correspond to methods luminis® 2008 - Adaptivity in Software Architecture - Angelo van der Sijpt 18
  24. 24. Yes, there is a problem • There are no fool-proof methods • Still, there are many projects that end more or less satisfactory. Why? luminis® 2008 - Adaptivity in Software Architecture - Angelo van der Sijpt 19
  25. 25. Yes, there is a problem • There are no fool-proof methods • Still, there are many projects that end more or less satisfactory. Why? • People luminis® 2008 - Adaptivity in Software Architecture - Angelo van der Sijpt 19
  26. 26. Any advice? • Continue progress, but do not look for a silver bullet. • Be aware of oversimplification. Creating good software is hard. • Trust good people! luminis® 2008 - Adaptivity in Software Architecture - Angelo van der Sijpt 20
  27. 27. In the end • Flexible, adaptive software needs a new way of making it. luminis® 2008 - Adaptivity in Software Architecture - Angelo van der Sijpt 21
  28. 28. Angelo van der Sijpt angelo.vandersijpt@luminis.nl “Adaptivity in Software Architecture”, TU/e, 2007 tue.nl/bibliotheek luminis® 2008 - Adaptivity in Software Architecture - Angelo van der Sijpt 22

×