040 / 42875-8434
stefan.sarstedt@haw-hamburg.de



Anliegen

Wir beschäftigen uns im Arbeitskreis Objekttechnologie Norddeutschland mit zahlreichen Themen aus der Informatik. Teilnehmer sind stets herzlich willkommen und zu nichts verpflichtet. Die Vorträge finden normalerweise an der HAW-Hamburg, Berliner Tor 7 um 19:00 Uhr im Raum 405 statt.

Interessenten, die in den Verteiler aufgenommen werden möchten, schicken mir bitte eine kurze Mail. Es erfolgt dann jeweils eine Erinnerung etwa zwei Wochen vor dem nächsten Termin.

Ich freue mich über Themen- und Vortragsvorschläge! Bei Interesse setzen Sie sich gerne mit mir in Verbindung.

Weitere Vorträge 2011

Datum Thema Vortragende/r

Archiv

Datum Thema Vortragende/r
27.04.2009 Continuous Integration mit Hudson

Die Folien zum Vortrag finden Sie hier.
Das Video zum Vortrag finden Sie hier.

Inhalt
Continuous Integration ist ein Mittel, die Komplexität von Software-Projekten beherrschbar zu machen. Dabei ist die Integration der verschiedenen Code-Teile nur ein Aspekt. Neben den Entwicklern und den Software-Architekten gewinnen auch Projektleiter und Qualitätssicherung durch die größere Transparenz.
Hudson ist eine erweiterbare Continuous Integration Engine, die viele alltägliche Anforderungen aus Software-Projekten gut umsetzt. Dabei ist sie extrem einfach aufzusetzen, leicht zu konfigurieren und durch Plugins gezielt erweiterbar. Am Beispiel eines konkreten Projekts werden verschiedene Anwendungsfälle (Continous Builds, Nightly Builds, Integration Tests) dargestellt.
Christian Betz (Plath GmbH)
18.05.2009 Rebol

Die Folien zum Vortrag finden Sie hier.
Das Video folgt.

Inhalt
REBOL ist in vielen Punkt einzigartig und bietet eine sehr kompakte Form, Dinge auszudrücken. Mit Elementen aus funktionalen Sprachen, eingebautem Parser für Domain-Specific-Languages (DSL), Netzwerksupport und GUI-Engine und einem Interpreter von gerade einmal 600KB, gehört REBOL zu den interessantesten der neuartigen Programmiersprachen. In einer Kombination aus Vortrag und Live-Demonstrationen wird Robert M. Münch die Vorzüge und Möglichkeiten von REBOL zeigen. In einer anschließenden Diskussion können dann Fragen geklärt werden.
Robert M. Münch
08.06.2009 Clean Code Developer - Eine Initiative für mehr Softwarequalität

Die Folien zum Vortrag finden Sie hier.
Das Video zum Vortrag finden Sie hier.

Die Klagen über unzureichende Software sind ja schon sprichwörtlich. Durch schlechte Anforderungsdefinitionen und ewigen Termindruck ist das aber nicht zu erklären. Vielfach stimmt einfach etwas nicht mit der Softwarequalität. Stefan Lieser und Ralf Westphal meinen, eine Ursache liege in der Abwesenheit eines unverbrüchlichen Fundaments an Prinzipien, Regeln und Praktiken für die tägliche Softwareentwicklung. Dabei mangelt es nicht an Bausteinen zu einem solchen Wertesystem. Die Literatur trägt sie schon lange zusammen - in die Curricula der Ausbildungsinstitutionen haben sie es jedoch noch nicht recht geschafft.  Und so schien es Stefan Lieser und Ralf Westphal angezeigt, diese Bausteine unter dem Dach einer Initiative für mehr Softwarequalität zu sammeln. Mit Clean Code Developer möchten sie die Praktiker der Softwareentwickler motivieren, sich schrittweise bewährte Prinzipien, Regeln und Praktiken anzueignen, die noch vor allen Technologiemoden zu höherer Softwarequalität führen. In seinem Vortrag stellt Ralf Westphal das Clean Code Developer Wertesystem vor, erklärt die Idee von der Arbeit an seinen Modulen und diskutiert mit den Zuschauern über Nutzen, Chancen und Grenzen der Initiative. Mehr Informationen zur Initiative unter http://www.clean-code-developer.de
Ralf Westphal
06.07.2009 Language-Oriented Programming – am Beispiel von Lisp    

Die Folien zum Vortrag finden Sie hier.

Betrachtet man große industrielle IT-Projekte heute, so werden nicht selten fünf und mehr Sprachen eingesetzt – auch in einem „reinen Java-Projekt“, wenn man genau hinschaut: Da wird HTML und JavaScript für die GUI verwendet, SQL bzw. EJBQL für den Datenbankzugriff, UML für die Modellierung, Perl für den UML->Java Generator, BPEL für die Prozesslogik und diverse XML-Dialekte für die Konfiguration. Warum ist das so? Weil unterschiedliche Probleme verschiedene Sprachkonstrukte bedingen.
Language-Oriented Programming erhebt genau das zum Prinzip.
Wäre es nicht schön …
… verschiedene Sprachen unterschiedlicher Stile in einer Entwicklungsumgebung zu integrieren?
… eigene Domain-Specific Languages auf ein konkretes Problem zuzuschneiden?
… inkrementell zu entwickeln und Aspekte produktionsreifer Systemen schrittweise dazuzuschalten?
Im Vortrag wird am Beispiel von Lisp aufgezeigt, wohin die Reise gehen könnte. Dabei geht es nicht um fertige Lösungen, schon gar nicht um ein Produkt, sondern um Konzepte und einen regen Gedankenaustausch.
Prof. Dr. Bernhard Humm
09.11.2009 Architektur des EM/OS-Systems: MDSD-Werkzeugkette und Laufzeitsystem

Die Folien zum Vortrag finden Sie hier.

Einige Bestandteile der Enterprise Model Operation Services EM/OS der Sphenon GmbH wurden im Arbeitskreis bereits im Detail vorgestellt: die virtuelle Oberfläche, die Objektbaupläne und der Ansatz der objektorientierten Geschäftsprozessmodellierung. Diesmal geht es um das Zusammenspiel der Komponenten: vom Modell im Repository bis zur automatisch erzeugten produktionsreifen Anwendung. Der Vortrag wird aufgrund der Fülle des Materials mehr auf der architektonischen Ebene bleiben, wir werden jedoch genug Zeit für Rückfragen einplanen, um bedarfsweise in die Tiefe gehen zu können. Die Kenntnis der vorigen Vorträge ist nicht erforderlich, rundet das Bild aber ab.
Andreas Leue
07.12.2009 Asynchrone Komponenten

Den Vortrag finden Sie hier.

Serviceorientierung im Kleinen "The free lunch is over", Software kann sich nicht mehr darauf verlassen, höhere Performance durch höhere Prozessorgeschwindigkeiten zu bekommen. Deshalb sollte Software in Zukunft alle 18 Monate ihre interne Parallelität verdoppeln, um mit dem Zuwachs an Prozessorkernen Schritt zu halten. Dafür muss die Softwareentwicklung grundsätzlich umdenken! Asynchrone Komponenten müssen in den Fokus der Entwicklung rücken. Nur wenn die Betriebssystemprozesse einer Anwendung intern (!) aus "Microservices" aufgebaut werden, ist das Ziel einer Moore´s Law folgenden Software zu erreichen. Der Vortrag stellt Microsofts Concurrency Coordination Runtime und den Xcoordination Application Space als Technologien vor, mit denen asynchrone Komponenten auf hohem Abstraktionsniveau definiert und "verdrahtet" werden können.
Ralf Westphal
08.02.2010

Leitlinie zur Strukturierung der Tchibo Prozesslandkarte

Die Folien zum Vortrag finden Sie hier.

Geschäftsprozesse werden durch Modelle beschrieben, die den Ablauf wiederkehrender Vorgänge darstellen. Nur selten wird Geschäftsprozessmodellierung zum Selbstzweck betrieben. In der Regel wird anhand von Geschäftsprozessmodellen das Aufgabenprofil einer Organisationseinheit und ihrer Akteure beschrieben und transparent gemacht. Häufig wird mit der Modellbildung geschäftlicher Abläufe die Erstellung einer prozessunterstützenden Software eingeleitet.

Um die Strukturen und das Verhalten von komplizierten realen Abläufen, wie die Geschäftsprozesse eines Unternehmens, zu verstehen, ist es zunächst erforderlich ein abstraktes Abbild zu schaffen. Es wird ein beherrschbares Modell benötigt. Das Anfertigen eines Modells ist ein wichtiger Schritt bei der Entwicklung einer prozessunterstützenden Software.

Das Anfertigen eines Modells ist ein wichtiger Schritt bei der Entwicklung einer prozessunterstützenden Software. An der Erstellung und Gestaltung eines Modells sind verschiedenste Personen und Personengruppen beteiligt: Fachabteilung, Business Analyst, Softwareentwickler, etc. Die an dem Softwareerstellungsprozess beteiligten Personen und Personengruppen verfolgen höchst unterschiedliche Ziele. Ebenso verschieden sind die Aufgabenstellungen und das damit verbundene Interesse an einem Modell. Einheitlich ist jedoch die Anforderung, dass die für sie erforderlichen Informationen leicht zugänglich sein müssen. Diese Forderung wird umso dringlicher je umfangreicher und komplexer ein Modell ist.

Das für die Modellierung von Geschäftsprozessen zu erstellende Modell muss sowohl den Belangen einer betriebswirtschaftlichen (fachlichen) als auch einer informationstechnischen Betrachtung genügen. Es existieren erhebliche Unterschiede zwischen einer fachlichen und einer informationstechnischen Modellierung. Das ist dadurch erklärbar, dass betriebswirtschaftliche Modellierungen, verglichen mit IT-Modellen, in vielen Bereichen andere Modellierungsziele abdecken.

Geschäftsprozessmodelle (betriebswirtschaftliche bzw. fachliche Betrachtung) dienen der Identifikation, Definition, Gestaltung und Evaluierung von organisatorischen und betriebswirtschaftlichen Abläufen innerhalb eines Unternehmens oder zwischen Geschäftspartnern. Demgegenüber werden Prozessautomatisierungsmodelle zur technischen Planung, Realisierung und Steuerung betrieblicher Informationssysteme eingesetzt.

Damit wird deutlich, dass beide Modellierungen verschiedene Ziele verfolgen und somit auch die Modelle einen unterschiedlichen Informationsinhalt aufweisen. Die Modellbildung läuft nicht nach fest definierten Regeln ab. Vielmehr handelt es sich um einen kreativen Prozess, für den gewisse Leitlinien existieren, die beispielsweise beschreiben, wie man das richtige Abstraktionsniveau für ein Modell findet. Es entstehen jedoch häufig Situationen, in denen einige Gründe für und andere Gründe gegen eine bestimmte Modellierung sprechen. Im Bereich der Modellierung gibt es keine optimalen Lösungen, vielmehr muss zwischen suboptimalen Alternativen entschieden werden.

Der Entscheidungsprozess zwischen solchen konkurrierenden Alternativen erfordert vorausschauendes Denken. Bereits gesammelte Erfahrungen bilden die Basis für ein solches vorausschauendes Denken, da sie helfen zu beurteilen, wie eine Entscheidung sich auf weitere Modellierungsaktivitäten in der Zukunft auswirken wird. Um die Modellierung in geordneten Bahnen, auf ein gemeinsames Modellierungsziel hinführend, verlaufen zu lassen, ist es hilfreich Strukturen und Ordnungskriterien zur Verfügung zu stellen.

Erfahren Sie in diesem Vortrag von Herrn Jan Jessen wie die Leitlinien zur Strukturierung der Tchibo Prozesslandkarte den an der Modellierung beteiligten Personen bei der Beherrschung des komplexen Geschäftsprozessmodels unterstützt und die Informationen des Modells auch Dritten leicht zugänglich macht.

Jan Jessen
12.04.2010

Scala einsetzen

Die Folien zum Vortrag finden Sie hier.

Die Programmiersprache Scala hat alle Attribute, um die Nachfolge von Java als generelle Entwicklungssprache von kleinen bis hin zu Enterprise-Projekten anzutreten. Aber ist die Zeit für einen produktiven Einsatz schon jetzt gegeben?

 Der Vortrag beleuchtet die zu Java erweiterten und neuen Funktionalitäten und zeigt, wie diese in Projekten produktiv eingesetzt werden. Nicht zurückgehalten werden dabei die Tücken im Detail, die beim Umstieg von Java auftreten können

Jan Kriesten
21.06.2010 Combinator Parsing in Scala

Die Folien zum Vortrag finden Sie hier.
Den Sourcecode finden Sie hier.

Inhalt
Als eine der modernen JVM Sprachen gewinnt Scala rapide an Beliebtheit. Die mächtige und flexible Syntax von Scala ermöglicht vieles auf der Java Platform, wofür Java Sprachmitteln allein nicht reichen: eigene Kontroll-Strukturen, erweiterte Klassenkomposition durch Traits, funktionale Programmierung, und leicht erstellte interne DSLs. Eine  DSL aus der Standardbibliothek, die diese Möglichkeiten eindrucksvoll ausnutzt, ist für Combinator Parsing.
 
Nach einem kurzen allgemeinen Rückblick auf die Sprache wird erklärt, wie Combinator Parsing in Scala funktioniert, mit einem besonderen Hinblick auf die Features von Scala, die die Implementierung als reine Bibliothek ermöglichen. Eine externe DSL für UML Statecharts wird gezeigt, die in Combinator Parsers implementiert ist, ein Statechart in Textform einliest und in eine Zustandsmaschine in Objektform transformiert. Beispielhaft wird damit aus einem Statechart eine Steuerungskomponente für ein einfaches Gerät generiert.

Stephan Freund
22.11.2010

Technische Sicherheitsanalysen - Die ganze Wahrheit

Die Folien zum Vortrag finden Sie hier.

Im Vortrag werden reale Szenarien aus der Tätigkeit einer Gruppe von Ethical Hackern dargestellt. Beginnend mit einigen Beispielen über besonders kuriose Lücken in der IT-Sicherheit werden Beispiele aus dem IT-Alltag genutzt, um einige leicht übersehene Schwachstellen zu demonstrieren. Im Rahmen der Veranstaltung werden ausgewählte Schwachstellen live vorgeführt sowie Maßnahmen beschrieben um diese Schwachstellen zu umgehen.

 Nach dieser allgemeinen Einführung werden im Folgenden freie Tools vorgestellt, die typische Probleme im Design von Web-Anwendungen identifizieren können. Zu diesen Problemen (bspw. Cross-Site-Scripting, SQL-Injection und Cross-Site-Request -Forgery) werden mögliche Auswirkungen an beispielhaften Web-Server demonstriert.

Dirk Reimers
11.04.2011

Usability – Ein entscheidender Weg zu mehr Softwarequalität

Gute Usability bedeutet, dass Menschen Produkte im Allgemeinen intuitiv und effizient benutzen können. Der Anwender steht dabei im Mittelpunkt der Betrachtung. Im Bereich der Software-Ergonomie bedeutet das, dass die Software den Anwender bei der Erfüllung seiner Aufgabe unterstützt. Sie soll das optimale Werkzeug sein, um eine spezielle Aufgabe schnell und unkompliziert zu bewältigen. Die klassische Werkzeugmetapher gehört zur gängigen Lehrmeinung im Bereich Software-Engineering. Derjenige der das optimale Werkzeug für seinen Bedarf hat, kann effizient und kostengünstig arbeiten.
Doch wie sieht es häufig in der Realität aus? Stellt man z. B. fest, dass Kunden Ihre Online-Bestellungen abrechen, der Anbieter aber den genauen Grund dafür nicht kennt? Oder machen Anwender Fehler wenn Sie die Software benutzen? Dies sind Anzeichen für nötige Verbesserungen.
Usability-Methoden können helfen, die Arbeit noch besser zu machen. Das Einbeziehen der Endanwender bewirkt Wunder. Nutzbar sind bspw. Task-Based-Testing, Thinking-Aloud und Eyetracking zur Steigerung der Qualität von Software.

Stefan Richter
09.05.2011

TKeasy - 10 Jahre produktives Java Enterprise in Hamburg

Die Folien zum Vortrag finden Sie hier.

Seit 10 Jahren ist die unternehmensweite Java-Systemarchitektur TKeasy bei der Techniker Krankenkasse produktiv. Täglich werden Milliarden Zugriffe auf Geschäftsobjekte und Millionen Datenbankabfragen von 7000 parallelen Nutzern und durch eine hohe Batch-Last performant realisiert. Der Vortrag stellt "TKeasy" kurz vor und konzentriert sich auf die Erfahrungen bei Entwicklung und Betrieb eines großen Java-Systems. Schwerpunkt ist der Einsatz von Java-Technologien und die durchgängige Nutzung der Objektorientierung.

Über den Sprecher:
Ralf Degner arbeitete mehrere Jahre als Chief-Consultant mit dem Schwerpunkt objektorientierte Architekturen bei der POET Software GmbH. Heute ist er als Projektleiter bei der Techniker Krankenkasse tätig, wo er bei der Konzeption und Realisierung der unternehmensweiten Anwendungsarchitektur TKeasy mitgewirkt hat.
Ralf Degner

Die Liste der Themen bis einschließlich 26.01.2009 finden Sie hier.

 

"Zwei Dinge sind zu unserer Arbeit nötig: Unermüdliche Ausdauer und die Bereitschaft, etwas, in das man viel Zeit und Arbeit gesteckt hat, wieder wegzuwerfen."
- Albert Einstein