Category

Verschiedenes

Micro Moves Randnotiz – Spielsituation als Zeichenkette … FEN (Forsyth-Edwards-Notation)

By | Verschiedenes | No Comments

Die Randnotizen ergänzen die Blog-Serie „Micro Moves“ wie ein Anhang. Sie beschreiben querschnittliche Aspekte, die das Verständnis der Quelltexte oder der Fachlichkeit (also Schach bzw. Computerschach) generell erleichtern. Sie passen nicht zu einem speziellen Bauteil/Modul. Stellt es Euch stets am Rand notiert vor.

Daten austauschen im Schach

DatenaustauschIm Computer-Schach gibt es für verschiedene Themen (de facto) Standards, so etwa für den Datenaustausch (Partien, Eröffnungen, …) oder die Kommunikation zwischen Schachprogrammen im Rahmen von Partien oder Turnieren. Eine sehr verbreite Notation für Spielsituationen (Schachstellungen) geht sogar ins 19. Jahrhundert zurück, als man Schachaufgaben effizient in Zeitschriften abdrucken wollte, ähnlich wie in jüngerer Vergangenheit Sudokus (zum Ursprung der Notation siehe Wikipedia).

Diese Notation heißt „Forsyth-Edwards-Notation“ (abgekürzt: FEN). Sie erlaubt die Angabe einer kompletten Spielsituation als kompakte Zeichenkette ohne Zeilenumbruch. Sie ist z.B. ideal für den Einsatz bei (Unit-)Tests im Computer-Schach. Da viele Schach-Tools die Notation unterstützen empfehle ich sehr sie auch Eure Schachpläne zu verwenden. FLEXess tut es auch.

Ein Beispiel

Schach, Grundstellung (Diagramm generiert mit chess-diagrams Modul aus Micro Moves)
Die Abbildung zeigt ein Schachbrett zu Beginn einer Partie, am Rand sind die Bezeichnungen für Linien (a-h) und Reihen (1-8) notiert.
In FEN wird die Grundstellung wie folgt notiert (die Gänsefüßchen kennzeichnen String-Anfang und -Ende und gehören nicht zur Notation):

"rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1"

Die zu Beginn mit Schrägstrichen ‚/‘ getrennten Folgen von Buchstaben und Ziffern beschreiben die Situation auf dem Brett. Kleine Buchstaben stehen für schwarze, große für weiße Figuren. Die Notation verwendet die englischen Bezeichnungen für Figurenarten (Rook für Turm, Pawn für Bauer, …). Der erste Block „rnb…“ liest sich daher „schwarzer Turm, schwarzer Springer, schwarzer Läufer …“. Weitere Informationen der FEN-Zeichenkette beschreiben unter anderem wer am Zug ist, Rochade-Rechte etc. — Alles Dinge, die man den Figuren auf dem Brett allein nicht ansieht.

Das Format im Detail

Das FEN-Format besteht aus 6 Bestandteilen („Gruppen“), jeweils mit Leerzeichen voneinander getrennt:

  1. Figuren auf dem Brett (oben „rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR“)
  2. Spieler am Zug (oben „w“ für weiß, „b“ stünde für schwarz)
  3. Rochade-Rechte (oben „KQkq“)
  4. en passant-Feld (oben ein Minus)
  5. Halbzüge für 50-Züge-Regel (oben „0“)
  6. Nummer des nächsten Zuges (oben „1“)

Die Rochade-Rechte (3.) zeigen an, welche Rochaden noch möglich sind. Die Gruppe ist erforderlich, da die Figuren am Brett allein das nicht erkennen lassen (konkret: ob eine Figur schon einmal bewegt wurde). „K“ und „Q“ für weiß (K = kurze Rochade, Q= lange Rochade), „k“ und „q“ für schwarz (k steht für kingside, q für queenside). Falls eine Rochade nicht mehr möglich ist entfällt der Buchstabe. Ist gar keine Rochade möglich enthält die Gruppe ein Minus (-).

Das en Passant-Feld (4.) enthält das übersprungene Feld, falls im Zug direkt zuvor ein Bauer 2 Felder nach vorn gegangen ist. Bei „e2-e4“ also „e3“. Der Gegner könnte dann en passant schlagen (wenn einer seiner Bauern passend steht). Bei allen anderen Zügen enthält die Gruppe ein Minus (-).

Die 50-Züge-Regel besagt, dass ein Spieler ein Remis reklamieren kann, wenn 50 Züge lang kein Bauer bewegt und keine Figur geschlagen wurde. Die Halbzüge (5.) zählen solche Züge. Nach einem Bauernzug oder dem Schlagen einer Figur ist der Wert wieder 0.

Die Nummer des nächsten Zuges (6.) zählt nach einem schwarzen Zug hoch, d.h. erst macht weiß seinen 1. Zug, dann schwarz seinen 1. Zug, dann weiß seinen 2. Zug usw.

Diagramm generiert mit chess-diagrams Modul aus Micro Moves

Für die Notation des Brettes (1. Gruppe in FEN) hier noch ein weiteres Beispiel!

"6r1/6pp/7r/1B5K/1P3k2/N7/3R4/8 w - - 30 79"

Die Schrägstriche (/) trennen die Reihen des Brettes, angegeben von oben nach unten (also Reihe 8 bis 1). Eine Ziffer (1-8) gibt an wie viele Felder frei sind. Im Beispiel oben die erste Reihe („6r1“): 6 Felder frei, ein schwarzer Turm (r), 1 Feld frei. Die Schrägstriche sind eigentlich redundant und erhöhen lediglich die Lesbarkeit.

Das Beispiel oben entstammt einer langen Partie zwischen zwei (schwachen) Computer-Gegnern. Am Ende wurde herumgeeiert (daher die hohe Zahl bei den Halbzügen für die 50-Züge-Regel), bis schwarz endlich gewonnen hatte (Weiß am Zug ist matt).

Tool-Unterstützung für FEN

Viele Schach-Softwarelösungen (freie und kommerzielle) unterstützen das FEN-Format. Das legt seine Verwendung in eigenen Schach-Programmiervorhaben nahe. Eine Spielsituation ist flink in einem graphischen Editor zusammengeklickt, dann als FEN in die Zwischenablage kopiert, und Standpunkt für einen Unit-Test …

...
String fen = "6r1/6pp/7r/1B5K/1P3k2/N7/3R4/8 w - - 30 79";
Position pos = new Position(pos);
Assert.assertTrue(rules.isMate(pos));
...

Das setzt voraus, dass der eigene Code FEN versteht (wie im Beispiel der Konstruktor für die Position-Klasse). Umgekehrt eignet sich FEN auch prima für LOG-Ausgaben, da es sich leicht aus der Zwischenablage in geeignete graphische Tools kopieren lässt. So lässt sich eine problematische Situation leicht visualisieren.

chessX: Editor für Stellungen

Die Abbildung oben zeigt den Editor des Schachwerkzeuges (chessX). Es kann so einiges mehr neben dem Editieren und dem Im- und Export aus und von FEN. Hier einige freie Softwarelösungen, die unter anderem zum Datenaustausch mit FEN geeignet sind …

  • chessX (Windows, Linux, MacOS)
  • Arena (Windows, Linux)
  • Scid (cross-platform, für Unix/Linux und Windows)

Die folgende Webseite erlaubt das Editieren und kopieren von/nach FEN online:

Einschränkungen des Formats

Eine Regel im Schach besagt, dass ein Spieler ein Remis reklamieren kann, wenn dieselbe Stellung mindestens zum dritten Mal innerhalb einer Partie auftritt. Das FEN-Format enthält nicht genügend Informationen, um eine Stellungswiederholung nachzuvollziehen. Weiterhin bildet FEN alternative Schachregeln (allen voran Chess960) nicht vollständig ab. Hierzu gibt es verschiedene Vorschläge, siehe Wikipedia.

FEN in Micro Moves und FLEXess

Das games-Modul (Bauteil 1) nutzt FEN zur Speicherung des Spielzustandes. Verwendet Ihr etwa die REST-Schnittstelle des Services, um Euch die Details einer Partie abzurufen, seht Ihr:

$ curl http://localhost:8080/api/games/1
{
"gameId":1, "playerWhite":"pinky", "playerBlack":"brain", "status":"ENDED",
"activeColour":"w",
"activePlayer":"pinky",
"fullMoveNumber":3,
"fen":"rnb1kbnr/pppp1ppp/8/4p3/6Pq/5P2/PPPPP2P/RNBQKBNR w KQkq - 0 3",
"created":"2018-04-01T18:39:12","modified":"2018-04-01T18:39:13"
}
$

Der Service des chess-diagrams-Moduls (Bauteil 2) nimmt einen FEN-String als Request-Parameter entgegen und generiert daraus ein PNG. Die Diagramme in diesem Beitrag hier sind damit erzeugt.

(Weitere Bauteile, die FEN nutzen, folgen …)

Fun Fact

Bei StackExchange findet Ihr eine schöne Aufgabe, bei der Ihr einen FEN-String (nur die erste Gruppe) in ASCII-Art verwandelt müsst. Ein eingereichter Beitrag in Perl kommt dazu mit nur 28 Bytes Quelltext aus.

Micro Moves Randnotiz – Lady hits farmer … Schachbegriffe auf Englisch

By | Verschiedenes | No Comments

Die Randnotizen ergänzen die Blog-Serie „Micro Moves“ wie ein Anhang. Sie beschreiben querschnittliche Aspekte, die das Verständnis der Quelltexte oder der Fachlichkeit (also Schach bzw. Computerschach) generell erleichtern. Sie passen nicht zu einem speziellen Bauteil/Modul. Stellt es Euch stets am Rand notiert vor.

Lady hits farmer … (?)

EnglishDer Quelltext zu FLEXess ist Englisch kommentiert, alle Bezeichner (Modul-, Klassen-, Methodennamen usw.) sind ebenfalls Englisch. Auch wenn Ihr solide Schachkenntnisse besitzt, erschließen sich die Englischen Fachbegriffe nicht von selbst. So heißt Dame im Schach nicht etwa Lady, Bauer nicht Farmer und Schlagen auch nicht „to hit“ … (richtig wäre „queen captures pawn“ in der Überschrift).

Da deutschsprachigen Lesern die Englischen Schachbegriffe also oft nicht geläufig sind, habe ich sie hier zusammengestellt, und bei der Gelegenheit auch kurz erklärt. Details siehe Schachregeln. Die Tabelle ist alphabetisch sortiert nach Englisch. Wenn ich Begriffe übersehen habe, gerne melden. Ich ergänze das Glossar gern!

(Schach-)Englisch – Deutsch

Englisch Deutsch Kurze Erklärung
Attack Angreifen Eine Figur greift eine gegnerische Figur an, wenn sie diese im nächsten Zug schlagen könnte.
Bishop Läufer Figur im Schach. Darf auf ein beliebiges anderes Feld entlang ihrer Diagonalen ziehen.
Capture Schlagen Wenn eine Figur auf ein Feld zieht, das von einer gegnerischen Figur besetzt ist, wird diese geschlagen und vom Brett entfernt.
Castling Rochade Spezieller Spielzug, bei dem der eigene König und ein eigener Turm zugleich bewegt werden.
Chessboard Schachbrett Ein 8 x 8 Gitter aus 64 gleich großen Quadraten, abwechselnd hell und dunkel (die weißen und schwarzen Felder).
Check Schach Im Sinne von „König im Schach“, also König ist angegriffen („king is in check“)
Checkmate Schachmatt siehe Mate.
Colour Farbe Schwarz und Weiß, die Farben der beiden Spieler
Draw Remis Ein Unentschieden im Schach. Es gibt verschiedene Möglichkeiten dazu, eine ist das Patt.
Endgame Endspiel Die Endphase einer Partie. Sie ist dadurch gekennzeichnet, dass nur noch wenige Figurenarten auf dem Brett sind.
en passant en passant Spezieller Bauernzug. Wenn ein Bauer zwei Felder vorgeht, und ein gegnerischer Bauer ihn hätte schlagen können, wäre er nur eins vorgegangen, darf dieser en passant schlagen.
File Linie Die acht senkrechten Spalten auf dem Schachbrett heißen Linien.
Game Partie Eine Schachpartie wird zwischen zwei Gegnern gespielt, die abwechselnd ihre Figuren auf einem Schachbrett ziehen.
Halfmove Halbzug Aktion (Spielzug) eines einzelnen Spielers. Im Gegensatz zu einer Folge von weißem und schwarzem Zug, die z.B. beim Nummerieren als Zug gezählt wird (Englisch: Fullmove).
King König Figur im Schach. Darf auf ein beliebiges angrenzendes Feld ziehen, das nicht von einer gegnerischen Figur angegriffen wird.
Knight Springer Figur im Schach. Zieht vereinfacht zwei Felder gerade, eins zur Seite. Laut offiziellen Spielregeln: Darf auf eines der Felder ziehen, die ihr am nächsten liegen, aber nicht auf gleicher Linie, Reihe oder Diagonalen.
Mate Matt Auch Checkmate (Schachmatt). Ende einer Schachpartie, bei dem der König des am Zug befindlichen Spielers angegriffen ist und nicht ausweichen kann. Der Spieler hat verloren.
Move Zug Ein Spieler „ist am Zug“ (Englisch „have the move“ oder „active“), sobald der Zug seines Gegners ausgeführt wurde.
Opening Eröffnung Erste Phase einer Schachpartie. Das Erfahrungswissen hierzu füllt viele Bücher und umfangreiche Datenbanken.
Opponent Gegner siehe Player.
Pawn Bauer Figur im Schach. Darf vorwärts auf das unbesetzte Feld direkt vor ihr ziehen, im ersten Zug auch zwei vor. Siehe auch en passant.
Piece Figur Es gibt sechs verschiedene Figurenarten im Schach.
Player Spieler Schwarz und Weiß. Der weiße Spieler beginnt die Partie.
Position Stellung Spielsituation. Im Wesentlichen, wie die Figuren auf dem Brett stehen und welcher Spieler am Zug ist. Einige Regeln führen zu weiteren Aspekten, z.B. en passent.
Promotion Umwandlung Ein Bauer, der die gegnerische Grundlinie erreicht, wird in Dame, Turm, Läufer oder Springer umgewandelt.
Queen Dame Figur im Schach. Darf auf ein beliebiges anderes Feld entlang ihrer Linie, Reihe oder Diagonalen ziehen.
Rank Reihe Die acht waagrechten Zeilen auf dem Schachbrett heißen Reihen.
Rook Turm Figur im Schach. Darf auf ein beliebiges anderes Feld entlang ihrer Linie oder Reihe ziehen.
Square Feld Das Schachbrett hat 64 Felder (8 x 8).
Stalemate Patt Ende einer Schachpartie, bei dem der am Zug befindliche Spieler keinen gültigen Zug hat, sein König aber nicht angegriffen ist. Das Spiel endet Remis.

Fehlt was?

Ihr vermisst einen Begriff? Habt beispielsweise in Quelltext oder Entwurf von FLEXess einen schachspezifischen Bezeichner o.ä. gefunden, der hier nicht erklärt wird? Ich ergänze das Glossar gern! Einfach melden …

Softwarearchitektur­ Speed-Dating in Dortmund bei der Softwerkskammer

By | Verschiedenes | No Comments

Am Abend des 20. Januar 2016 gibt Stefan Zörner eine interaktive Session bei der Softwerkskammer Dortmund.

„Softwarearchitektur­ Speed-Dating“

Softwerkskammer Logo

Softwarearchitektur­ Speed-Dating
Sprecher: Stefan Zörner
Interaktiver Vortrag bei der Softwerkskammer Dortmund
Mittwoch, 20. Januar 2016, ab 19 Uhr
Ständige Vertretung, Dortmund

Anmeldung über Xing
Anmeldung über Meetup

Zeitgemäße Softwarearchitektur ist nicht das Werk einzelner. Architekturansätze und Ideen entstehen im Team und werden gemeinsam reflektiert. Alle Entwickler müssen sie zumindest verstehen und mittragen können. Aber was genau müsst Ihr vermitteln? Reicht aufschreiben? Hilft UML?

Stefan Zörner zeigt auf lebendige Weise, wie Ihr Eure Softwarearchitektur wirkungsvoll kommunizieren könnt. Nach kurzen theoretischen Inputs rund um Architekturdokumentation und -bewertung probiert Ihr das Gehörte gleich aus. Ihr lernt die Lösungen anderer Teilnehmer kennen und erfahrt Schritt für Schritt, welche Zutaten in einem Architekturüberblick keinesfalls fehlen sollten – egal wie kurz er ist. Ihr lernt die richtigen Fragen zu stellen und passende Antworten parat zu haben.

Bringt bitte die Bereitschaft mit, Euch über Eure Projekte und Softwarelösungen auszutauschen, und anderen Teilnehmern Feedback zu geben. Die sonst üblichen Speed-Dating-Themen wie Kinderwünsche klammern wir aus.

Die Veranstaltung ist kostenlos. Eine Anmeldung ist über die Seite der Softwerkskammer und auch über Xing und Meetup möglich.

Zur Veranstaltung

Meetup in Hamburg im November: Microgames for Wetware Developers

By | Verschiedenes | No Comments

Vorschau: Anfang November geht’s beim Softwarearchitektur Meetup in Hamburg ums Spielen …

Meetup
 Microgames for Wetware Developers
Moderatoren: Julia Dellnitz, Harm Gnoyke
Veranstaltung beim Softwarearchitektur Meetup Hamburg
03. November 2015, 18:30 – 21:00 Uhr
Kühne & Nagel, Großer Grasbrook 11-13 in Hamburg (Karte), Erdgeschoss Schulungsraum 1

Zur kostenlosen, verbindlichen Anmeldung

Microgames sind kleine unabhängige Lerneinheiten zu einem speziellen Thema, wie zum Beispiel Softwarearchitektur. Diese kleinen „ Lernspiele“ unterstützen Teams und Unternehmen dabei, sich in einem Bereich oder einem Projekt zügig aufzuschlauen und lassen sich gut in den Arbeitsalltag integrieren.
Der Ansatz von Microgames basiert auf der Erkenntnis, dass die vorhandenen Verbindungen in unserem Gehirn durch regelmäßiges Lernen verstärkt werden. Integrieren wir also kleine Lerneinheiten in unseren Alltag, verändert sich auch langsam unsere Verdrahtung und stellt sich auf das Neue ein. Schließlich ist unser Gehirn ein Leben lang formbar – es muss nur häufig genug mit den richtigen Reizen versorgt werden.
Julia Dellnitz (Learnical) und Harm Gnoyke (embarc) nutzen aktuelle neurowissenschaftliche Erkenntnisse und versprechen kurzweilige Spiele verknüpft mit praktischen Beispielen aus der Softwarearchitektur. Join us and be ready to play!

Die Veranstaltung ist kostenlos. Für Snacks und Getränke vor Ort wird gesorgt sein.

Bitte beachtet bei eurer Zusage, dass ihr bei diesem interaktiven Format auch wirklich kommt und nicht die Leute auf der Warteliste enttäuscht sowie die Vorbereitungszeit der Referenten zunichte macht. Vielen Dank!

Zur Anmeldung

 

follow us on Twitter – @embarced

RheinJUGLogo250

Steht alles im Wiki? – im Januar bei der rheinjug Düsseldorf

By | Verschiedenes | No Comments

Am 21. Januar 2016 sind wir bei rheinjug in der Heinrich-Heine Universität in Düsseldorf vor Ort.

„Steht alles im Wiki? Eine Softwarearchitektur im Wandel.“

rheinjug Logo

Steht alles im Wiki? Eine Softwarearchitektur im Wandel.
Sprecher: Stefan Zörner
Vortrag bei der rheinjug Düsseldorf
Donnerstag, 21. Januar 2016
Heinrich-Heine Universität Düsseldorf, Hörsaal 5C

Viele Softwaresysteme blicken auf eine bewegte Vergangenheit zurück. Änderungen im Umfeld, etwa im Markt oder durch technologische Neuerungen, setzten sie unter Druck. Mitunter stand am Ende die Neuentwicklung der Lösung oder zumindest großer Teile davon. Die Geschichte solcher Systeme wird selten erzählt.

Nicht so hier: In diesem Vortrag unternehmen wir eine kleine Zeitreise und bewerten eine prominente Software-Lösung, die bereits viele Jahre in zahllosen Umgebungen produktiv ist, zu verschiedenen Zeitpunkten: Atlassian Confluence. Zum Einsatz kommen dabei Werkzeuge aus qualitativen Evaluierungsmethoden wie ATAM, gezielt ergänzt um quantitative Techniken. Wir fokussieren auf gravierende Veränderungen im Softwaresystem – wichtigen Ereignissen in seiner Biographie. Wodurch waren die Schritte motiviert? Welche Risiken wurden bewusst in Kauf genommen, welche Kompromisse eingegangen? Haben sie sich rückblickend bewährt? Die Teilnehmer lernen nebenbei, wie eine Architekturbewertung grundsätzlich funktioniert.

Zur Veranstaltung

JavaScript, Flux und Architekturüberblicke – embarc auf der W-JAX 2015

By | Verschiedenes | No Comments

Vorschau: Anfang November 2015 sind wir mit verschiedenen Workshops und Vorträgen auf der W-JAX in München dabei – vier Sessions in vier Tagen.

„Einführung in JavaScript für Java-Entwickler“
Logo W-Jax
Einführung in JavaScript für Java-Entwickler
Sprecher: Oliver Zeigermann
Workshop auf der W-JAX 2015
Montag, 2. November 2015, 9 – 17 Uhr
The Westin Grand München, Arabellastrasse 6

In diesem ganztägigen Workshop führt Sie Oliver Zeigermann in alle für Java-Entwickler wesentlichen Spracheigenschaften von JavaScript ein. Die Themen Objekte, Arrays, Funktionen, prototypische Vererbung und Module stehen auf dem Programm und auch die neuen Sprachfeatures der nächsten Sprachversion ECMAScript 2015 werden hier genauer unter die Lupe genommen.

„Flux – Facebooks Beitrag zur UI-Architektur der Zukunft“
Logo W-Jax
Flux – Facebooks Beitrag zur UI-Architektur der Zukunft
Sprecher: Oliver Zeigermann und Stefan Toth
Vortrag auf der W-JAX 2015
Dienstag, 3. November 2015, 15 – 16 Uhr
The Westin Grand München, Arabellastrasse 6

Facebook, Yahoo! und einige andere Schwergewichte beschreiten neue Wege im Aufbau von Webapplikationen. Aus der Not immer komplexerer Anwendungen entwickelte sich ein neuer Architekturstil, der verspricht, Ordnung ins sonst so übliche Frontend-Chaos zu bringen: Flux. Aufbauend auf den Ideen von Facebooks React-Framework, etabliert Flux einen einseitig gerichteten Datenfluss. Damit werden selbst komplexe Abhängigkeitsnetze zwischen Webkomponenten handhabbar, allerdings wird auch mit dem sonst so unumstrittenen Model-View-Controller-Ansatz gebrochen und an vielen Stellen mit bekannten Anti-Patterns gearbeitet. Ist es an der Zeit, diesem Beispiel zu folgen und einige Anti-Patterns zu Best-Practices zu erklären? Diese Session hilft Ihnen bei der individuellen Beantwortung dieser Frage. Wir führen in die beteiligten Konzepte und Frameworks ein, zeigen, in welchen Umfeldern Flux-basierte Architekturen hilfreich sind, und arbeiten Kompromisse heraus, die Sie bei der Adoption eingehen müssen.

„Live-Coding: JavaScript-Sprachgrundlagen für Java-Entwickler (Remastered 2015)“
Logo W-Jax
Live-Coding: JavaScript-Sprachgrundlagen für Java-Entwickler (Remastered 2015)
Sprecher: Oliver Zeigermann
Interaktive Session auf der W-JAX 2015
Mittwoch, 4. November 2015, 9 – 10 Uhr
The Westin Grand München, Arabellastrasse 6

JavaScript ist eine schlechte Sprache? Man kann keine Klassen und Vererbung ausdrücken? Es gibt kein Modulsystem und einen Sichtbarkeitsbereich zu erzeugen, erfordert einen Doktortitel? Die einzige Datenstruktur ist ein Array und Objekte müssen als Maps für Arme herhalten? In dieser interaktiven Live-Coding-Session werden wir uns die neuen Features der aktuellsten JavaScript-Sprachversion ECMAScript 2015 ansehen und diese Fragen neu beantworten.

„So sieht’s aus! Architekturüberblicke – Tipps und Tricks“
Logo W-Jax
So sieht’s aus! Architekturüberblicke – Tipps und Tricks
Sprecher: Stefan Zörner
Vortrag auf der W-JAX 2015
Donnerstag, 5. November 2015, 9 – 10 Uhr
The Westin Grand München, Arabellastrasse 6

Sie haben eine bestehende Softwarelösung und wollen ihre Architektur erklären, vielleicht einem neuen Teammitglied oder einem Kooperationspartner? Der Quelltext ist zu „ausführlich“ und erzählt trotzdem nicht die ganze Geschichte. Was zeigen Sie in solchen Fällen von ihrer Dokumentation? Ach, haben Sie nicht … Nicht schlimm: In dieser Session geht es um das Anfertigen eines Architekturüberblicks aus dem Nichts heraus. Das stumpfe Ausfüllen eines Templates führt dabei oft zu Frust. Ich zeige stattdessen, wie Sie die Aufgabe pragmatisch und zugleich wirkungsvoll angehen. Dabei diskutieren wir auch Formen, Zutaten, Werkzeuge und Vorgehen. Sie lernen die minimale Ausprägung eines Architekturüberblicks kennen und erfahren, in welchen Situationen Sie von diesem Minimalset abweichen können.

Zur Veranstaltung

Softwarearchitektur Speed-Dating im März bei der JUG in Münster

By | Verschiedenes | No Comments

Vorschau: Stefan Zörner moderiert im März das Softwarearchitektur Speed-Dating bei der Java User Group in Münster.

Softwarearchitektur­ Speed-Dating
Sprecher: Stefan Zörner
Interaktiver Vortrag bei der Java User Group Münster
3. März 2015, ab 18:00 Uhr (Einlass)
LVM Versicherung, Münster (Hauptgebäude)

Zeitgemäße Softwarearchitektur ist nicht das Werk einzelner. Architekturansätze und Ideen entstehen im Team und werden gemeinsam reflektiert. Alle Entwickler müssen sie zumindest verstehen und mittragen können. Aber was genau müsst Ihr vermitteln? Reicht aufschreiben? Hilft UML?

Stefan Zörner zeigt auf lebendige Weise, wie Ihr Eure Softwarearchitektur wirkungsvoll kommunizieren könnt. Nach kurzen theoretischen Inputs rund um Architekturdokumentation und -bewertung probiert Ihr das Gehörte gleich aus. Ihr lernt die Lösungen anderer Teilnehmer kennen und erfahrt Schritt für Schritt, welche Zutaten in einem Architekturüberblick keinesfalls fehlen sollten – egal wie kurz er ist. Ihr lernt die richtigen Fragen zu stellen und passende Antworten parat zu haben.

Bringt bitte die Bereitschaft mit, Euch über Eure Projekte und Softwarelösungen auszutauschen, und anderen Teilnehmern Feedback zu geben. Die sonst üblichen Speed-Dating-Themen wie Kinderwünsche klammern wir aus.

follow us on Twitter – @embarced

Unser Beitrag auf der OOP 2015 in München

By | Verschiedenes | No Comments

Ende Januar 2015 waren wir mit einem Beitrag im Programm der OOP Konferenz in München vertreten:

„Aktives Warten für Architekten“

OOP 2015

Aktives Warten für Architekten
Sprecher: Stefan Toth
Vortrag auf der OOP Konferenz 2015
27. Januar 2015, 17:45 – 18:45 Uhr
 Internationales Congress Center (ICM), München

Bei der Erstellung von Software treffen Sie ständig größere und kleinere Entscheidungen – von der Datenbankebene über Aspekte der logischen Strukturierung und Integration, bis hin zum UI. Diese Session stellt das Konzept des letzten vernünftigen Moments (LVM) vor und zeigt, warum Sie wichtige Fragestellungen möglichst spät beantworten sollten. Projektbeispiele illustrieren, wie der LVM-Ansatz in der Praxis funktioniert, vorgestellte Taktiken machen das aus Lean stammende Konzept greifbar und anwendbar.

Zur Veranstaltung

Keynote auf der Web Developer Conference (WDC) kompakt 2014 in Köln

By | Verschiedenes | No Comments

Vorschau: Anfang Dezember 2014 hält Stefan Zörner die Abschlusskeynote auf der Web Developer Conference (WDC) kompakt in Köln:

„Wo Softwarearchitektur überflüssig ist und wo unvermeidlich“
Wo Softwarearchitektur überflüssig ist und wo unvermeidlich
Sprecher: Stefan Zörner
Keynote auf der Web Developer Conference kompakt 2014
1. Dezember 2014, 17:00 – 18:00 Uhr
  pullman Cologne, Köln

In agilen Zeiten wirken Architekturtapeten mit UML-Diagrammen fast schon wie Höhlenmalerei. Softwarearchitektur hängt mitunter ein ballasthaftes Image an. Viele Projekte im Web-Umfeld verzichten heute auf klassische Architektur-Rituale und die Architektenrolle und liefern trotzdem prima Lösungen. Oder gerade deswegen? Softwarearchitektur ist laut Eoin Woods die Menge aller Entwurfsentscheidungen, die, wenn falsch getroffen, Ihr Projekt zum Scheitern bringen kann. Wo überlassen wir das Ergebnis dem Zufall? Und wo ist Mehraufwand gut investiert?
Diese Keynote zeigt auf, wo Softwarearchitektur auch heute noch wertvolle Impulse im Projekt liefert, und wie Sie und Ihr Team diese erzeugen und nutzen. Wo völliger Verzicht auf Softwarearchitektur das Schicksal geradezu tollkühn herausfordert. Und wo beherztes Weglassen Raum liefert für das, worauf es tatsächlich ankommt.

Zur Veranstaltung

 

Unsere Beiträge auf der W-JAX 2014 in München

By | Verschiedenes | One Comment

Vorschau: Auch in diesem Jahr sind wir wieder mit Beiträgen auf der W-JAX im November in München vertreten:

„Softwarearchitektur-Speeddating (Wer einsam bleibt, ist selber schuld!)“
Softwarearchitektur-Speeddating („Wer einsam bleibt, ist selber schuld!“)
Sprecher: Stefan Zörner
Nightschool auf der W-JAX 2014
Dienstag, 4. November 2014, 20:00 – 21:30 Uhr
  The Westin Grand, Arabellapark, München

Zeitgemäße Softwarearchitektur ist nicht das Werk einzelner. Architekturansätze und Ideen entstehen im Team und werden gemeinsam reflektiert. Alle Entwickler müssen sie zumindest verstehen und mittragen können. Aber was genau müsst ihr vermitteln? Reicht aufschreiben? Hilft UML? Diese Nightschool zeigt auf lebendige Weise, wie ihr eure Softwarearchitektur wirkungsvoll kommunizieren könnt. Nach kurzen theoretischen Inputs rund um Architekturdokumentation und -bewertung probiert ihr das Gehörte gleich aus. Ihr lernt die Lösungen anderer Teilnehmer kennen und erfahrt Schritt für Schritt, welche Zutaten in einem Architekturüberblick keinesfalls fehlen sollten – egal, wie kurz er ist. Ihr lernt die richtigen Fragen zu stellen und passende Antworten parat zu haben. Bringt bitte die Bereitschaft mit, euch über eure Projekte und Softwarelösungen auszutauschen und anderen Teilnehmern Feedback zu geben. Die sonst üblichen Speeddatingthemen wie Kinderwünsche klammern wir aus.

„Der LVM — Wichtige Entscheidungen erfolgreich verschleppen“
Der LVM — Wichtige Entscheidungen erfolgreich verschleppen
Sprecher: Stefan Toth
Vortrag auf der W-JAX 2014
Mittwoch, 5. November 2014, 15:00 – 16:00 Uhr
  The Westin Grand, Arabellapark, München

Bei der Erstellung von Software treffen Sie ständig größere und kleinere Entscheidungen – von der Datenbankebene über Aspekte der logischen Strukturierung und Integration, bis hin zum UI. Diese Session stellt das Konzept des letzten vernünftigen Moments (LVM) vor und zeigt, warum Sie wichtige Fragestellungen möglichst spät beantworten sollten. Projektbeispiele illustrieren, wie der LVM in der Praxis funktioniert, vorgestellte Taktiken machen das aus Lean stammende Konzept greifbar und anwendbar.

„Panel zur Zukunft des Java Application Servers“
 Panel zur Zukunft des Java Application Servers
 Stefan Zörner (Moderation), Dirk Weil, Eberhard Wolff
Paneldiskussion auf der W-JAX 2014
Mittwoch, 5. November 2014, 19:30 – 21:00 Uhr
  The Westin Grand, Arabellapark, München

Der Application Server zählt zu den Dinosauriern der Java-Landschaft. Unlängst werden Stimmen laut, die seine Berechtigung in Frage stellen. Ist der Java Application Server dem Tode geweiht? Oder erlebt er nicht eher dank der Leichtgewichtigkeit von Java EE 7 einen zweiten Frühling? Welche Auswirkungen haben aktuelle Trends im Ökosystem auf das Konzept des App Servers? Das und mehr wollen wir in diesem Panel mit Ihnen diskutieren. Zur Einstimmung dazu vertreten Dirk Weil und Eberhard Wolff in kurzen Vorträgen jeweils das Für bzw. Wider. Stefan Zörner führt als Moderator durch den Abend und freut sich auch auf Ihre Erfahrungen mit oder ohne Application Server!

„Workshop — Architekturbewertung: Das Wesentliche“
 Architekturbewertung: Das Wesentliche
Trainer: Stefan Toth, Stefan Zörner
Workshop auf der W-JAX 2014
Freitag, 7. November 2014, 09:00 – 17:00 Uhr
  The Westin Grand, Arabellapark, München

Architekturbewertung reduziert die Unsicherheiten beim Treffen größerer Entscheidungen, hilft Ihnen Risiken und Kompromisse mit fachlichen Ansprechpartnern zu diskutieren und kann Ihre konzeptionellen Tätigkeiten ordnen und leiten. Auf der anderen Seite werden Bewertungsmethoden für Softwarearchitektur häufig als groß, teuer oder schwergewichtig beschrieben. Dieser Workshop destilliert die Essenz aus diesen Methoden und macht die wesentlichsten Aspekte von Architekturbewertungen greifbar. Sie erleben, wie leichtgewichtige Bewertungsansätze funktionieren, was sie auszeichnet und auch was sie gegenüber ausgefeilteren Architekturbewertungsprozessen verlieren.

Zur Veranstaltung