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