![]() |
Last update: Sat Nov 16 11:37:16 CET 2002
18.11.2002
Hallo alle,
wir sind am 5.2.2003 (Mittwoch) ein Track der Entwicklertage.
Armin
Agile Prozesse nur für kleine Teams? Sie skalieren auch! Ein
Erfahrungsbericht über Einführung und Verwendung agiler Ideen in
einem mission-critical Großprojekt im Bankenbereich.
Praktische Anwendung von agilen Methoden zur Software-Entwicklung mit C++ in Cross-Platform-Projekten.
Um Integrationsprobleme zu minimieren sind agile Teams bemüht, möglichst häufig ihre Änderungen mit der gemeinsamen Code-Basis zusammenzuführen. Der Vortrag soll zeigen, wie dieses Vorgehen durch den Einsatz eines Integrationsservers unterstützt werden kann. Basierend auf den Erfahrungen des Einsatzes von Cruise Control bei der disy Informationsdienste GmbH (www.disy.net) werden Konzepte und Auswirkungen auf den Entwicklungsprozess beleuchtet. Zugleich sollen potentielle Probleme und Alternativen zur Sprache kommen.
Während die agile Softwareentwicklung auf Menschen fokussiert, verlässt sie sich auch in immer größerem Maße auf Werkzeuge, um die tägliche Arbeit zu unterstützen bzw. zu automatisieren. Dieser Vortrag bietet einen Überblick über eine Auswahl von Werkzeugen und Techniken, die sich in unseren Projekten bewährt haben.
Was geht in Menschen vor, die das Wort "eXtreme Programming" zum ersten Mal hören? Welche Verfahren und Konzepte wenden Menschen an, um zu einer Entscheidung (z.B. für oder gegen eine Software-Entwicklungs-Methodik) zu kommen. Worauf müssen wir achten, wenn wir Agiles und Extremes verkaufen?
Wird es hier um die Analyse von Datenbank-Transaktionen gehen? Nein! Die Transaktionen, um die es hier geht, finden zwischen Menschen statt. Menschen spielen miteinander Spiele ... schöne, böse, aufregende, langweilige. Thema des Vortrags ist die These, daß sich XP und agile Entwicklungsverfahren (noch) nicht schnell verbreiten, weil zwischen Auftraggebern und Auftragnehmern im Software-Entwicklungsbereich (psychologische) Spiele gespielt werden und diese Spiele vorläufig nicht aufgegeben werden.
Die Entwicklung von Web-Anwendungen konfrontiert die Entwickler mit
Problemen, die bei konventioneller Anwendungsentwicklung nicht bekannt
sind. Große Schwierigkeiten bereitet u.a. die saubere Trennung von View,
Model und Controller. Diesem Problem begegnen bekannte Verfahren zur
Web-Entwicklung mit Java nicht in ausreichender Form. Sowohl bei reiner
Servlet-Programmierung wie auch bei der Benutzung von JSP kommt es zu einer
erheblichen Vermengung dieser Aspekte. Selbst bei Einsatz von Taglibs oder
Struts wird nicht die gewünschte Abstraktion von technischen Details
erreicht. Das führt dazu, dass die Entwickler sich mit Implementierung auf
technischem Nivaeu beschäftigen müssen, statt sich um die Entwicklung der
eigentlichen Funktionalität kümmern zu können. Der Einsatz des
Open-Source-Framework Tapestry schaftt hier Abhilfe. Die Entwickler werden
zu wesentlichen Teilen von technischen Details (wie Request, URL-Parsing,
Session-Handling) abgeschirmt. Außerdem erlaubt Tapestry im hohen Maße die
Wiederverwendung von einmal geschriebener Funktionalität (in Form von sog.
Komponenten). Im Sinne agiler Software-Entwicklung erreicht man so eine
deutlich schnellere Umsetzung von Funktionalität und hat somit die
Möglichkeit kleine Iterationen tatsächlich einzuhalten. Unabhängig von der
Wahl der Java-Web-Technologie (JSP oder Tapestry) wird nach wie vor das
Testing der Anwendungen stark vernachlässigt. Bei einem sauberen
Anwendungsdesign lassen sich Datenbankschicht und das Model hervoragend mit
JUnit testen. Der View-Bereich (also der Web-Anteil der Anwendung) kann mit
HttpUnit gut getestet werden. Dabei werden die Aktionen eines Benutzers der
Anwendung simuliert. Es werden hier die gleichen Vorteile wie bei normalem
Unit-Testing erzielt: automatisierte, wiederholbare Tests, Dokumentation
der Funktionalität durch Tests, deutliche schnelleres Testverfahren als
manuelle Tests.
In diesem Vortag soll exemplarisch die Entwicklung einer kleinen Anwendung
mit Tapestry demonstiert werden. Dabei wird die Entwicklung durch
HttpUnit-Tests geführt. Ziel dieser Vorführung ist zu verdeutlichen, dass
sich bei Einsatz geeigneter Werkzeuge die Entwicklung von Web-Anwendungen
gut in einen agilen Prozess einpasst.
Squeak is der Versuch, den Traum eines wahrhaft persönlichen Computers zu verwirklichen. Vom Grundschüler bis zum professionellen Entwickler: Squeak hat viel interessantes zu bieten. Dieser Vortrag gibt einen Überblick ueber den aktuellen Stand der Entwicklung.
Dieser Vortrag zeigt am Beispiel von "Seaside", einem Framework für Webentwicklung, was ein dynamisches System wie Squeak für die alltägliche Arbeit leisten kann.
Marcus Denker
beschäftigt sich seit 1998 mit Squeak, da
er davon überzeugt ist, dass es bessere Sprachen als
Java, C++ und C# gibt. Er ist 1. Vorsitzender des Squeak Deutschland e.V.
und studiert Informatik an der Universität Karlsruhe.
Jutta Eckstein ist als unabhängige Beraterin und Trainerin für objektorientierte Technologien tätig. Ihre Erfahrung mit agilen Vorgehensweisen basiert auf ihrer
mehr als zehnjährigen Erfahrung in der Erstellung von objektorientierter
Software. Ihre Arbeit hat sie diesbezüglich vorgestellt bei der XP, OOPSLA, OT
und EuroPLoP. Unter anderem ist sie Mitglied des Programmkomitees der XP 2002 in
Cagliari, Italien sowie der XP Agile Universe in Chicago.
Tammo Freese
ist Softwareentwickler und Berater bei OFFIS.
Seit 1999 setzt er Extreme Programming-Techniken in Projekten um
und hält regelmäßig Vorträge und Tutorials zu Praxisthemen
rund um agile Softwareentwicklung.
Sven C. Koehler arbeitet seit 5 Jahren als OO-Software-Entwickler und
setzt seit einiger Zeit begeistert agile Methoden in der Praxis ein.
Des Weiteren interessiert er sich für OO-Sprachen aller Art und ist
Autor von OO-Bench, dem Versuch eines sprachübergreifenden
OO-Benchmarks.
Manfred Lange seit 1993 in der Softwarebranche tätig, setzt eXtreme Programming (XP) seit 1999 ein. Zunächst als Software-Architekt
führte er XP-Methoden in seine Projekte ein. Heute ist er als
Projektmanager verantwortlich für das (natürlich mit XP-Methoden
erstellte) Support Portal sowie die internen XP-Aktivitäten eines
großen internationalen Unternehmens. Daneben ist er zeitweise als
Consultant für XP sowie für Softwarearchitektur und -design tätig.
Sein besonderes Interesse gilt der Suche nach möglichst simplen und
schlichten Lösungen für bessere Softwaresysteme ("Plain and Simple
Solutions For Better Software!"). Er ist Author mehrerer
Veröffentlichungen in den Bereichen XP, Design Patterns sowie
objektorientierte Datenbanken. Darüber hinaus ist er Mitinhaber eines
Softwarepatentes.
(Weiter Infos: Manfred Lange)
Ilja Preuß setzt sich
seit gut zwei Jahren mit Extreme Programming auseinander und bemüht sich mit
wachsendem Erfolg, seine privaten und beruflichen Projekte agiler zu
gestalten. Homepage
Christian Noack arbeitet seit 1998 für die Daedalos Consulting GmbH. Sein
Aufgabenbereich umfasst die Arbeit als Senior Consultant, als
Projektleiter, Trainer, Coach und Software-Entwickler. Seine Schwerpunkte
liegen methodisch im Bereich Agile Prozesse. Technisch beschäftigt sich der
ehmalige Smalltalk-Entwickler momentan vorwiegend mit der Entwicklung
Web-Anwendungen im Java-Umfeld.
Armin Röhrl und Stefan Schmiedl
Stefan Schmiedl und Armin Röhrl leiten die junge Softwareschmiede und Consultingfirma Approximity die hauptsächlich Produkte in den Bereichen Webservices, Risk Management und Finanzsektor entwickelt. Seit zwei Jahren setzen sie auf agile Entwicklungsmethoden wie extremes Programmieren und Geheimwaffen (relativ unbekannte hyperproduktive Sprachen und Tools) wie Ruby, Dylan, Lisp, ..., da sie so ihren Kunden schneller hochwertige Qualität bieten können. Zusammen mit Clemens Wyss haben sie das erste
deutschsprachige Buch über Ruby "Programmieren mit Ruby" (dpunkt.verlag) geschrieben.
Frank Westphal
ist Extreme Programming Pionier.
Als freier Berater und Trainer unterstützt er
verschiedene Teams dabei, bessere Software mit
weniger Programmierstress zu entwickeln.