SlideShare une entreprise Scribd logo
1  sur  192
surviving
architecture
?
Lars Jankowfsky
[dodger]
CTO
swoodoo.com
awesome!!!




swoodoo.com
Johann-Peter
  Hartmann
[johann__]
CTO @ Mayflower
CEO @ SektionEins
   fixes security issues
   done by Mayflower
totally awesome!!!




CTO @ Mayflower
CEO @ SektionEins
   fixes security issues
   done by Mayflower
why?
Great!
but
but
don‘t you hate that word?
right?
Java!
Ruby on Rails
better choose PHP




ok ok
Zend Framework?
Symfony?
sorry
sorry
not really.....
!design
how?
however
YOU
architecture
client - server
client - server
  kinda old school
SAP
Mainframe
web?
many
25
SRS
travel expenses
HUGE
facade
tcp/ip
<?php
see?
Frontend and
  Backend
<script>
view
controller
templates
PHP
ASP
JSP
whatever
backend
business logic
REST
database
@todo
Three-tier model
presentation
logic
database
Database centric
again this
         old stuff?




Database centric
seriously
4GL
Informix
SAP R/3
stored procedures
@todo
Distributed
computing
Seti@Home
swoodoo 0.1
active-X
peer 2 peer
server
now
?
ATAM
Method
@todo
Standard
ISO 9126
categorize
areas
Functionality
•Suitability
•Accuracy ..
•Interoperability
•Compliance
•Security
•Suitability
•Accuracy ..
•Interoperability
•Compliance
•Security
        Security?
Reliability
•Maturity
•Recoverability
•Fault Tolerance
Important!



     •Maturity
     •Recoverability
     •Fault Tolerance
Efficiency
•Time
Behaviour
•Resource
Behaviour
Usability
•Learnability
•Understandabil
ity
•Operability
Maintainability
•Stability
•Analyzability
•Changeability
•Testability
Portability
•Installability
•Replaceability
•Adaptability
•Conformance
•Installability
•Replaceability
•Adaptability
•Conformance
•Installability
•Replaceability
•Adaptability
•Conformance
FURPS
adaption
focus
@todo
finally
real!
Real Options
@todo
last...
standards
ISO
although
valid
still sucks




valid
finally
right is wrong
right is wrong
Believe it!
architecture
NOW
example
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo
@todo

Contenu connexe

En vedette

En vedette (18)

NewWork in der Praxis
NewWork in der PraxisNewWork in der Praxis
NewWork in der Praxis
 
RoofTop Brains & BBQ: Ein Gästbuch für China
RoofTop Brains & BBQ: Ein Gästbuch für ChinaRoofTop Brains & BBQ: Ein Gästbuch für China
RoofTop Brains & BBQ: Ein Gästbuch für China
 
Warum die it nicht um new work herumkommt
Warum die it nicht um new work herumkommtWarum die it nicht um new work herumkommt
Warum die it nicht um new work herumkommt
 
Web 2.0 revisited
Web 2.0 revisitedWeb 2.0 revisited
Web 2.0 revisited
 
Erfolgreiche rewrites
Erfolgreiche rewritesErfolgreiche rewrites
Erfolgreiche rewrites
 
Leadership in der IT
Leadership in der ITLeadership in der IT
Leadership in der IT
 
Einfangen eines technisch kaputten projektes
Einfangen eines technisch kaputten projektesEinfangen eines technisch kaputten projektes
Einfangen eines technisch kaputten projektes
 
Das Ende der Karriere
Das Ende der KarriereDas Ende der Karriere
Das Ende der Karriere
 
Performancemessung, jetzt in echt
Performancemessung, jetzt in echtPerformancemessung, jetzt in echt
Performancemessung, jetzt in echt
 
Agile versus Management WJAX 2014
Agile versus Management WJAX 2014Agile versus Management WJAX 2014
Agile versus Management WJAX 2014
 
Reparier Deine Unternehmenskultur!
Reparier Deine Unternehmenskultur!Reparier Deine Unternehmenskultur!
Reparier Deine Unternehmenskultur!
 
Lügen, schlimme Lügen und IT-Verträge
Lügen, schlimme Lügen und IT-VerträgeLügen, schlimme Lügen und IT-Verträge
Lügen, schlimme Lügen und IT-Verträge
 
Vom Entwickler zur Führungskraft
Vom Entwickler zur FührungskraftVom Entwickler zur Führungskraft
Vom Entwickler zur Führungskraft
 
Presentation zen mayflower
Presentation zen mayflowerPresentation zen mayflower
Presentation zen mayflower
 
Legacy php - Sanieren oder Ablösen?
Legacy php  - Sanieren oder Ablösen?Legacy php  - Sanieren oder Ablösen?
Legacy php - Sanieren oder Ablösen?
 
Von Kutschern, Managern und Systemadministratoren
Von Kutschern, Managern und SystemadministratorenVon Kutschern, Managern und Systemadministratoren
Von Kutschern, Managern und Systemadministratoren
 
DevOps jenseits der Tools
DevOps jenseits der ToolsDevOps jenseits der Tools
DevOps jenseits der Tools
 
Management brainfucks
Management brainfucksManagement brainfucks
Management brainfucks
 

Similaire à Surviving Architecture

Magento's Imagine eCommerce Conference: Do You Queue?
Magento's Imagine eCommerce Conference: Do You Queue?Magento's Imagine eCommerce Conference: Do You Queue?
Magento's Imagine eCommerce Conference: Do You Queue?
varien
 
My cool new Slideshow!
My cool new Slideshow!My cool new Slideshow!
My cool new Slideshow!
netzwelt12345
 
ExpressionEngine - Simple Steps to Performance and Security (EECI 2014)
ExpressionEngine - Simple Steps to Performance and Security (EECI 2014)ExpressionEngine - Simple Steps to Performance and Security (EECI 2014)
ExpressionEngine - Simple Steps to Performance and Security (EECI 2014)
Nexcess.net LLC
 

Similaire à Surviving Architecture (20)

Os Solomon
Os SolomonOs Solomon
Os Solomon
 
Super Sizing Youtube with Python
Super Sizing Youtube with PythonSuper Sizing Youtube with Python
Super Sizing Youtube with Python
 
Magento's Imagine eCommerce Conference: Do You Queue?
Magento's Imagine eCommerce Conference: Do You Queue?Magento's Imagine eCommerce Conference: Do You Queue?
Magento's Imagine eCommerce Conference: Do You Queue?
 
Evolution of PHP
Evolution of PHPEvolution of PHP
Evolution of PHP
 
My cool new Slideshow!
My cool new Slideshow!My cool new Slideshow!
My cool new Slideshow!
 
How to deploy & optimize eZ Publish
How to deploy & optimize eZ PublishHow to deploy & optimize eZ Publish
How to deploy & optimize eZ Publish
 
PHP is the King, nodejs is the Prince and Lua is the fool
PHP is the King, nodejs is the Prince and Lua is the foolPHP is the King, nodejs is the Prince and Lua is the fool
PHP is the King, nodejs is the Prince and Lua is the fool
 
Php Frameworks
Php FrameworksPhp Frameworks
Php Frameworks
 
The future of templating and frameworks
The future of templating and frameworksThe future of templating and frameworks
The future of templating and frameworks
 
Whats next in templating
Whats next in templatingWhats next in templating
Whats next in templating
 
ExpressionEngine - Simple Steps to Performance and Security (EECI 2014)
ExpressionEngine - Simple Steps to Performance and Security (EECI 2014)ExpressionEngine - Simple Steps to Performance and Security (EECI 2014)
ExpressionEngine - Simple Steps to Performance and Security (EECI 2014)
 
PHP – Faster And Cheaper. Scale Vertically with IBM i
PHP – Faster And Cheaper. Scale Vertically with IBM iPHP – Faster And Cheaper. Scale Vertically with IBM i
PHP – Faster And Cheaper. Scale Vertically with IBM i
 
Transform software delivery with tasktop integration hub
Transform software delivery with tasktop integration hubTransform software delivery with tasktop integration hub
Transform software delivery with tasktop integration hub
 
Why I've Not bothered With Drupal 8
Why I've Not bothered With Drupal 8Why I've Not bothered With Drupal 8
Why I've Not bothered With Drupal 8
 
Zend Server - OSI Days
Zend Server - OSI DaysZend Server - OSI Days
Zend Server - OSI Days
 
Whats next in templating
Whats next in templatingWhats next in templating
Whats next in templating
 
PHP Frameworks, or how I learnt to stop worrying and love the code
PHP Frameworks, or how I learnt to stop worrying and love the codePHP Frameworks, or how I learnt to stop worrying and love the code
PHP Frameworks, or how I learnt to stop worrying and love the code
 
LAMP is so yesterday, MEAN is so tomorrow! :)
LAMP is so yesterday, MEAN is so tomorrow! :) LAMP is so yesterday, MEAN is so tomorrow! :)
LAMP is so yesterday, MEAN is so tomorrow! :)
 
Server Add-ons for Front-end Developers
Server Add-ons for Front-end DevelopersServer Add-ons for Front-end Developers
Server Add-ons for Front-end Developers
 
Scaling with Symfony - PHP UK
Scaling with Symfony - PHP UKScaling with Symfony - PHP UK
Scaling with Symfony - PHP UK
 

Plus de Johann-Peter Hartmann

Plus de Johann-Peter Hartmann (12)

The End of my Career
The End of my CareerThe End of my Career
The End of my Career
 
E-Commerce vs Architektur CodeTalks.Commerce_2018
E-Commerce vs Architektur CodeTalks.Commerce_2018E-Commerce vs Architektur CodeTalks.Commerce_2018
E-Commerce vs Architektur CodeTalks.Commerce_2018
 
DevOps beyond the Tools
DevOps beyond the ToolsDevOps beyond the Tools
DevOps beyond the Tools
 
Surviving Complexity
Surviving ComplexitySurviving Complexity
Surviving Complexity
 
Java script security for java developers
Java script security for java developersJava script security for java developers
Java script security for java developers
 
Rewrites überleben
Rewrites überlebenRewrites überleben
Rewrites überleben
 
JavaScript Security
JavaScript SecurityJavaScript Security
JavaScript Security
 
Serverside Cryptoparty
Serverside CryptopartyServerside Cryptoparty
Serverside Cryptoparty
 
Wetware Bugs and Refactoring
Wetware Bugs and RefactoringWetware Bugs and Refactoring
Wetware Bugs and Refactoring
 
JavaScript und Security - JavaScript Days 2013 Berlin
JavaScript und Security - JavaScript Days 2013 BerlinJavaScript und Security - JavaScript Days 2013 Berlin
JavaScript und Security - JavaScript Days 2013 Berlin
 
JavaScriptDays: vom 10 Tage Hack zur ersten Universalsprache?
JavaScriptDays: vom 10 Tage Hack zur ersten Universalsprache?JavaScriptDays: vom 10 Tage Hack zur ersten Universalsprache?
JavaScriptDays: vom 10 Tage Hack zur ersten Universalsprache?
 
Profiling for Grown-Ups
Profiling for Grown-UpsProfiling for Grown-Ups
Profiling for Grown-Ups
 

Surviving Architecture

Notes de l'éditeur

  1. \n
  2. in case you wonder who we are\n
  3. \n
  4. some know me also as \n
  5. \n
  6. \n
  7. \n
  8. Not this surprising, but you can find me on irc since 16 years. Nowadays more on freenode.\n
  9. \n
  10. architecture?\n
  11. \n
  12. imagine success which is \n
  13. \n
  14. VC funding finally took place\n
  15. \n
  16. now it&amp;#x2018;s your turn to make the right architecture decisions\n
  17. \n
  18. ask your colleagues\n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. sorry forgot that we are talking about architecture\n
  25. We are not talking &amp;#xB4;bout design here. If you want design, go ahead and play design patterns. we do architecture patterns here.\n
  26. how do we choose the right architecture?\n
  27. pray\n
  28. \n
  29. there is a way out\n
  30. and that&amp;#x2018;s why you are here.\n
  31. \n
  32. \n
  33. \n
  34. \n
  35. but how about the web\n
  36. many years ago\n
  37. actually 25\n
  38. there was, or better still is - a company called SRS which\n
  39. software for calculating travel expenses\n
  40. for really huge companies\n
  41. and they planned to enter the internet\n
  42. but remember the 25 years?\n
  43. we wrote a facade which wraps their software and\n
  44. communicates via tcp/ip\n
  45. with php\n
  46. even client server still can be a valid choice\n
  47. \n
  48. frontend could be\n
  49. \n
  50. \n
  51. \n
  52. \n
  53. \n
  54. \n
  55. \n
  56. and the backend usually has\n
  57. \n
  58. could be behind REST\n
  59. and even in the database\n
  60. johann sevengames example\n
  61. \n
  62. presentation layer\n
  63. business logic\n
  64. \n
  65. simply a classic architecture\n
  66. \n
  67. old school\n
  68. \n
  69. \n
  70. \n
  71. \n
  72. sixt example johann\n
  73. \n
  74. \n
  75. bot net\n
  76. and last but not least\n
  77. to avoid IP banning issues we&amp;#x2018;ve developed an active-x plugin which \n
  78. for screenscraping\n
  79. and these clients communicated between each other to share tasks \n
  80. and finally uploaded the results to the server from where these where delivered to the user\n
  81. now you learned about all these different architecture you might \n
  82. wonder how to choose the right architecture?\n
  83. Architecture_Tradeoff_Analysis_Method\n
  84. Architecture_Tradeoff_Analysis_Method\n
  85. Architecture_Tradeoff_Analysis_Method\n
  86. Architecture_Tradeoff_Analysis_Method\n
  87. Architecture_Tradeoff_Analysis_Method\n
  88. Architecture_Tradeoff_Analysis_Method\n
  89. Architecture_Tradeoff_Analysis_Method\n
  90. Architecture_Tradeoff_Analysis_Method\n
  91. \n
  92. there is an app err standard for that\n
  93. \n
  94. \n
  95. \n
  96. \n
  97. \n
  98. \n
  99. \n
  100. \n
  101. \n
  102. \n
  103. \n
  104. \n
  105. \n
  106. \n
  107. conformance refers to standards \n
  108. conformance refers to standards \n
  109. there is an easy way\n
  110. \n
  111. it&amp;#x2018;s an adaption of the ISO standard\n
  112. whic focuses on\n
  113. \n
  114. \n
  115. let&amp;#x2018;s get real\n
  116. let&amp;#x2018;s get real\n
  117. \n
  118. and last but not least\n
  119. all these methods are very &amp;#x201E;german&amp;#x201C;\n
  120. \n
  121. \n
  122. the &amp;#x201E;american&amp;#x201C; way would be to throw the whole piece on the wall and\n
  123. if it stucks, then invest serious energy on architecture.\n
  124. this sucks from a developer perspective\n
  125. it&amp;#x2018;s an valid approach.\n
  126. \n
  127. The right architecture is wrong\n
  128. the only valid architecture is the one you need\n
  129. \n
  130. let me give you an example\n
  131. swoodoo example - architecture change\n
  132. \n
  133. \n
  134. \n
  135. \n
  136. \n
  137. \n
  138. \n
  139. \n
  140. \n
  141. \n
  142. \n
  143. \n
  144. \n
  145. \n
  146. \n
  147. \n
  148. \n
  149. \n
  150. \n
  151. \n
  152. \n
  153. \n
  154. \n
  155. \n
  156. \n
  157. \n
  158. \n
  159. \n
  160. \n
  161. \n
  162. \n
  163. \n
  164. \n
  165. \n
  166. \n
  167. \n
  168. \n
  169. \n
  170. \n
  171. \n
  172. \n
  173. \n
  174. \n
  175. \n
  176. \n
  177. \n
  178. \n
  179. \n
  180. \n
  181. \n
  182. \n
  183. \n
  184. \n
  185. \n
  186. \n
  187. \n