Gernot Starke - Quality-driven Software Architecture

  • bei Konzentration auf DDD besteht die Gefahr, dass man wesentliche nicht-funktionale Anforderungen nicht beachtet, die aber einen großen Einfluß auf die Architektur haben
  • Applying Domain-Driven Design” – Jimmy Nilsson
  • Qualitätsziele (Security, Flexibilität, Robustheit…) genau beschreiben (zu Beginn!)
    • auf konkrete, entscheidbare Qualitätskriterien herunterbrechen

Keynote: Matthias Marschall - DevOps

DevOps = nichts Neues, nur Strukturierung von Best Practices

  • DevOps = Culture + Automation + Measurement + Sharing
    • frühzeitiges Einbeziehen
    • stabile Betriebsumgebungen (zumindest eine Staging Env. identisch mit Prod.Env.)
    • Ein-Klick-Releases
    • Businessmetriken, Technische Metriken (CPU-Usage…), Prozessmetriken (# Bugs, # Releases…)
    • Ideen austauschen, Probleme diskutieren
  • Automatische/häufige Releases sind nur so möglich (Unternehmen mit mehreren Releases pro Tag arbeiten nach diesen Prinzipien)
  • Automatisierung: “Infrastructure as Code” – Tools: Puppet, Chef

Gavin King - The Ceylon Language

Keine Ahnung warum man Ceylon verwenden soll & wozu es gut ist – aber: echt cooler Typ :-)

  • Holt das Maximum aus statischem Typ-Checks heraus (z.B. ist “null” eine Klasse & ein Typ, d.h. keine NullPointerExceptions, weil das bereits zur Compilezeit abgefangen werden kann)
  • Compiler (Translation zu javac AST) ist noch nicht fertig implementiert – 1st Milestone im Jänner oder Februar
  • Ziel ist nicht Interoperabilität mit Java, sondern das SDK zu ersetzen

Dan Allen, Lincoln Baxter, Anrew Rubinger – Arquillian

  • Problem mit Integration Tests: Build phase between Coding and Testing
  • Arquillian: Run tests inside the container
    • @RunWith(Arquillian.class), @Deployment, Shrinkwrap
    • no mocking, all container services are available
    • Portable Tests (regarding environments, Applicationservers)
    • @RunAsClient, @ArquillianResource, @Drone (to integrate Selenium)

Alois Reitbauer - Performance bei Webanwendungen

  • “Außergewöhnliche schnelle” Webseiten (<2 sec): Es bleibt keine Zeit mehr für serverseitige Verarbeitung
  • Third-Party-Content verlangsamt eine Webseite sehr stark (Größenordnung: Faktor 3)
  • siehe: Performance Best Practices (Yahoo, Google), YSlow
  • Zeiterwartung bei Mobile Devices ist genauso wie bei Browser am PC