|
Agile Project Management (Ken Schwaber), Monday 22. November 2004, 9:00-12:30We can read about agile processes in books and articles. However, the management of projects using an agile process represents a significant shift for both the project team(s) and the organization as a whole. The shift internal to the team occurs as the project manager teaches the customer how to drive the project iteration by iteration to maximize ROI, with no intermediaries between the customer and team. The other internal shift as the team realizes that self- management means exactly that - the team has to figure out how to manage its own work cross-functionally. These are trivial words, but the realization their impact on career paths, relationships, and performance reviews is profound. Even more difficult is helping the team and organization overcome the bad habits they had acquired prior to implementing the agile process - waterfall thinking, command-and-control management, and abusive relationships. Ken Schwaber, the instructor, has addressed these problems in numerous organizations and will share his insights with the attendees, along with a framework for thinking about the new role of a project manager. Since it is easy to think one knows what agile processes are like without understanding what they really feel like, two case studies are used. The class is divided into small teams that have to plan a facility for trading excess Major League Baseball tickets, and then to respond to a major project change just 30 days prior to implementation. Who should attend: You should attend this tutorial if you want to understand how to use agile processes to manage projects and be implemented within an organization.
Testgetriebene Entwicklung im Kleinen und im Großen (Tammo Freese, Johannes Link), Monday 22. November 2004, 9:00-12:30Automatisiert durchführbare Tests sind ein effektives Mittel, die vorhandene Funktionalität bei der Weiterentwicklung einer Applikation abzusichern. In der testgetriebenen Softwareentwicklung motivieren wir jede funktionale Änderung am System vor ihrer Implementierung durch einen automatisierten Test. Dieses Tutorial führt mit praktischen Übungen in die testgetriebene Entwicklung ein. Mit JUnit erstellen die Teilnehmer Tests "im Kleinen" für Ausschnitte eines Softwaresystems und lernen, wie sie mit Mockobjekten Schnittstellen im System simulieren können. Mit dem Akzeptanztestframework FIT erfahren die Teilnehmer, wie sie ihren Kunden ermöglichen können, automatisierte Tests für das Gesamtsystem zu entwickeln. Teilnehmer: Fortgeschritte Java-Entwickler; JUnit-Grundkenntnisse wünschenswert. WICHTIG: Je 2 Personen benötigen ein Notebook mit einer Java- Entwicklungsumgebung, vorzugsweise Eclipse oder IntelliJ IDEA!
XP Game (Vera Peeters, Pascal Van Cauwenberghe), Monday 22. November 2004, 9:00-12:30The XP Game is a playful way to familiarize the players with some of the more difficult concepts of the XP Planning Game, like velocity, story estimation, yesterday's weather and the cycle of life. Anyone can participate. The goal is to make development and business people work together, they both play both roles. It's especially useful when a company starts adopting XP. Intended audience: developers, business people, managers, coaches, teachers, and everyone else who is involved with a project experience level: apprentice, journeyman, master
Keynote Jutta Eckstein: "Agile Softwareentwicklung in der Praxis", Montag 22. November 2004, 14:00-15:00
Hands-on Refactoring: keeping software malleable (Duncan Pierce, Rachel Davies), Monday 22. November 2004, 15:30-17:00Most software gets new requirements over time. The accumulated changes often stress the original design in unanticipated ways. When this happens, the software often gets more and more difficult to work with: development slows down, or more bugs appear. Sometimes it becomes so difficult to add new functionality or prevent new bugs creeping in that it seems easier to give up and rewrite the system from scratch. This can be avoided by refactoring. Refactoring breathes new life into code by changing the way it is written without changing what it does, keeping the code malleable and ready to accept change. It works in small, easy steps, and requires no big investment. This tutorial introduces and explains refactoring in a hands-on tutorial. During the tutorial, attendees will learn how to refactor mercilessly to keep their code maintainable, ready for new functionality. Participants will need to bring a laptop with Eclipse 3 and JDK 1.4 installed (visit http://java.sun.com and http://www.eclipse.org/ to download them).
Extending XP with Scrum (Joseph Pelrine), Monday 22. November 2004, 15:30-17:00Scrum, one of the agile processes, has been used to develop systems and products since 1995 on thousands of projects in hundreds of organizations. Scrum implements in several days and delivers increments of functionality within thirty days. Scrum wraps existing engineering practices. This session compares Scrum and XP contrasting their strenghs.One of the interesting things about both XP and Scrum is that they're both explicit about the areas that the other process is vague in. Although the processes complement each other quite well, there is still quite a bit of fine-tuning that needs to be done to get them to mesh, and not mess, with each other. Intended Audience: managers, developers, testers, coaches, customers Experience level: no previous experience required. Any knowledge of an agile process, such as XP or Scrum, or experience in software development, would be helpful.
Testgetriebene Entwicklung und interaktives Testen - Symbiose statt Widerspruch? (Ilja Preuß, Markus Gebhard), Monday 22. November 2004, 15:30-17:00Obwohl Extreme Programming einen starken Schwerpunkt auf automatisiertes Testen setzt, zeigt sich häufig, dass manuelles Testen weiterhin einen wertvollen Beitrag im Entwicklungsprozess leisten kann. Einige Eigenschaften, wie z.B. Usability, lassen sich nicht gut vollständig vorab definieren; zudem kann das explorative Ausprobieren von Teilfunktionalität die Kommunikation, Zuversicht und Moral im Team fördern. Wie sich diese Art des Testens mit der Testgetriebenen Entwicklung verbinden lässt, wie man auch hier die Feedback-Schleife klein halten kann und welche Art der Software-Unterstützung sinnvoll und möglich ist - z.B. durch den Einsatz des Open Source Frameworks JDemo - das möchten wir in dieser Session zusammen mit den Teilnehmern erforschen. Zielpublikum: Entwickler, Coaches und technische Projektleiter/Manager Voraussetzung: grundlegende Erfahrung mit Testgetriebener Entwicklung mit einem xUnit-Framework
SCRUM-Szenario (Joseph Pelrine, Rachel Davies, Boris Gloger), Monday 22. November 2004, 17:15-18:00The Scrum Game is an intense and enjoyable simulation which allows participants to experience the rhythm and excitement of Scrum without having to write code. The goal is to illustrate the basic ideas (Backlog, Sprint etc.) and roles (Product Owner, ScrumMaster, Team) of Scrum, and a short introduction to these topics is held prior to the simulation. Since no previous knowledge is required, anyone can participate. Intended audience: developers, business people, managers, coaches, teachers, and anyone else interested in trying out Scrum Experience level: apprentice, journeyman, master
Sind wir nicht alle ein bisschen agil? (Tammo Freese), Monday 22. November 2004, 17:15-18:00Das agile Manifest ist unwiderstehlich. Es beschreibt agile Entwicklung durch eine Gegenüberstellung von Werten, wobei jeweils ein Wert mehr geschätzt wird als ein anderer - und kaum jemand widerspricht dieser Gegenüberstellung. Dieser Vortrag beschäftigt sich mit den Fragen, ob das agile Manifest zur Definition der agilen Entwicklung konkret genug ist, und welche Rolle die ungeliebten, weniger geschätzten Werte in der agilen Entwicklung spielen.
Agile Entwicklung unter schwierigen Projektbedingungen (Alexander van der Vekens), Monday 22. November 2004, 17:15-18:00Der Vortrag handelt von einem Projekt, das unter schwierigen Randbedingungen startete (von heute auf morgen) und durchgeführt werden musste (Auftraggeber nicht vor Ort, ambitionierter Endtermin). Es blieb keine Zeit, einen für diese Randbedingungen angemessenen Entwicklungsprozess festzulegen und das Projekt ausreichend zu planen. So wurde mit XP im Hinterkopf des Projektleiters begonnen - nach und nach manifestierte sich das Vorgehen mit Einsatz von Techniken des XP, so dass die Produktivität zum Ende des Projektes hin stetig stieg, und auch größere Hindernisse, wie ein umfangreiches Redesign, überwunden werden konnte. An diesem Beispiel soll gezeigt werden, dass gewisse Projekte überhaupt nur mit agilen Methoden erfolgreich durchgeführt werden können und dass agile Methoden jederzeit, auch unter schwierigen Randbedingungen, nutzbringend eingesetzt werden können.
Systems Thinking Workshop (Pascal Van Cauwenberghe, Willem van den Ende, Marc Evers), Tuesday 23. November 2004, part 1: 9:00-10:30, part 2: 11:00-12:30The goal of this workshop is to apply and evaluate systems thinking as a methodology-independent tool for understanding and influencing the dynamics of software development projects, teams, and organisations. Participants will learn to apply systems thinking, and in particular the Diagram of Effects (or Causal Loop Diagrams) technique, to different situations in projects, teams, and organisations; they also have an opportunity to share experiences in a structured way.
Einsatz von Elementen des XP beim Relaunch eines Großprojektes - Ein Erfahrungsbericht (Jörg Dreinhöfer), Tuesday 23. November 2004, 9:00-9:45Das hier berichtete Projekt erreichte nach mehrjähriger Entwicklungszeit nicht seine zuvor versprochenen Ergebnisse. Beim Relaunch, der durch die Kunden nur mit Mühe genehmigt wurde, war sicherzustellen, dass ein Fehlschlag diesmal unbedingt vermieden wurde. Mit Elementen aus dem XP wurde das Management des ca. 200 Personen großen Teams durchgeführt. Methoden wie zum Beispiel "time boxing" halfen dabei, das Ziel zu erreichen und die Software gemäß Projektplan an die Kunden auszuliefern.
Was extreme Qualität kostet: Testbasierte Entwicklung mit Application Frameworks (Peter Sommerlad), Tuesday 23. November 2004, 9:00-9:45Dieser Vortrag beschreibt die Herausforderungen, denen man sich bei der Software Entwicklung von und mit Application Frameworks stellen muss. Gute automatisierte Tests bieten eine hervorragende Basis die Qualität, Anpassbarkeit und Wartbarkeit der Applikationen und des zugehörigen Frameworks zu steigern. Der Vortrag zeigt die Lektionen, die wir in der Praxis gelernt haben, und die Geschichte, wie sich unser Arbeitsstil dabei verbesserte. Automatisiertes Testen kann zu nachhaltigen Lösungen führen, aber trotzdem langfristig für einen Lösungsanbieter nicht wirtschaftlich sein!
Erfahrungsbericht Test-Driven Development in einem Web-basierten J2EE Projekt (Sascha Appel), Tuesday 23. November 2004, 9:45-10:30Im Rahmen eines Projektes wagten wir uns erstmals an das Test-Driven-Development. Bei diesem Projekt handelt es sich um eine komplexe Web-Anwendung für einen großen Automobil-Finanzdienstleister. Die Web Anwendung bietet den Kunden des Finanzdienstleisters die Möglichkeit, eine individuelle Ratenberechnung für Neufahrzeuge, Gebrauchtfahrzeuge und Motorräder durchführen zu können. Da die Anwendung in eine bestehende Software-Architektur integriert werden soll und mit einer Vielzahl bereits bestehender Software-Komponenten zusammenarbeiten soll, die nicht mittels Test-Driven Development erstellt wurden, entstanden hier zusätzlich interessante Fragestellungen. Hinzu kamen Fragestellungen im Bezug auf den Einsatz dieses Prozesses im Web-Umfeld. Wie mit dieser Herausforderung umgegangen wurde, und welche Stolpersteine es wie zum umschiffen galt soll im Rahmen dieses Vortrages erläutert werden.
Requirements Management als Bindeglied zwischen der konventionellen Projektwelt und XP (Martin Landvoigt), Tuesday 23. November 2004, 11:00-12:30Zur erfolgreichen Abwicklung von Projektaufträgen braucht es erst mal ... einen klaren Auftrag! Im Falle agiler Prozesse ist dieser Rahmen, einschließlich unvermeidbarer Verträge, besonders heikel. Der Auftraggeber muss einen Leistungsumfang budgetieren, ggf. mit Festpreis - Ausschreibungen. Ein abzunehmendes Ergebnis wird erwartet. Der Auftragnehmer möchte anstelle von unüberschaubaren Risiken leiber ein scheres und lukratives Geschäft machen. Annahmen über ein vollständiges und hinreichendes Pfichtenheft sind Wunschdenken, ebenso wie ein harmonisches Change Management mit einvernehmlicher Abrechnung. Sowenig wie möglich, soviel wie nötig: Damit XP und Projektmanagement schlechthin funktioniert, ist ein Minimum an strukturiertem Vorgehen (3-Phasen-Modell: Feasabillity / Construction / Maintenance) unvermeidlich. Ein strukturierter inkrementeller Ansatz ist die Incremental Funding Methodology (IFM) Zielpublikum:Projekt-Auftraggeber /Entscheider: Mittel zum Aufsetzen erfolgreicher Projekte Entwickler, Projektleiter, Projektmanager, Tester: Verbesserte Prozesstransparenz und Methodik
Understanding the Roots of Agility (Joseph Pelrine), Tuesday 23. November 2004, 11:00-12:30One criticism raised with regard to agile methodologies is their scalability, or, better said, the areas of development projects to which they can successfully be applied. The continual search for a silver bullet has lead many to try a "one size fits all" approach here too. Using input from the domain of complexity theory, it becomes much easier to see where agile methodologies can be used, how soft techniques such as retrospectives and facilitation fit in, and (more importantly) why they do. This approach also provides an understandable explanation for many of the movements and theories underlying the agile solution domain, and provides new and refreshing insights into the goals of XP and agile software development, and the reason why it actually works. Intended audience: managers, developers, coaches Experience level: journeyman, master.
The Drawing Carousel: a Pair Programming Experience (Vera Peeters, Peter Schrier), Tuesday 23. November 2004, 13:30-15:00The participants will experience how a pair programming team works. Working in a single pair is different from working on your own, but this is only half of the story: working in a Pair Programming Team has many more advantages. You will learn about the necessity of tools like daily standup meetings, pair rotation, coding standards and collective code ownership, how they work, and what their effects are. who should attend: Intended audience: developers, managers, coaches, teachers experience level: apprentice, journeyman, master benefits of attending: Real life experience, but no programming involved! See and feel how this can possibly work without putting your real project at risk!
Planung und Steuerung von Iterationen in größeren Projekten (Bernd Oestereich), Tuesday 23. November 2004, 13:30-15:00Zwischen den Extremen einer agilen und leichtgewichtigen Projektsteuerung und einer eher schwergewichtiger Projektverwaltung liegen viele unterschiedliche Möglichkeiten, Projekte zu planen, zu steuern und zu kontrollieren. Dieser Vortrag zeigt, wie agiles und iteratives Vorgehen auch in mittleren und größeren Projekten erfolgreich praktiziert werden kann, welche verschiedenen Färbungen es gibt und wie agile Gedanken ohne Revolution in typische Hierarchien und Rahmenbedingungen von Großprojekten oder Unternehmen mit standardisierten Vorgehensmodellen eingebettet werden kann. Der Vortrag beschreibt verschiedene Planungs- und Steuerungsebenen, verschiedene Feedback-Schleifen (innerhalb einer Iteration, bezogen auf die Folgeiteration, bezogen auf die Gesamtplanung u.a.) und endet mit ein paar Statistiken/Grafiken aus echten Projekten.
Project Manager versus Scrum Master - The difference is below the surface (Boris Gloger), Tuesday 23. November 2004, 15:30-17:00In the egroups we always have always the discussion if an agile project needs a project manager or in which way is a Scrum Master/Coach different than a project manager. Both roles are identical on the surface. The difference is the mindset of a Scrum Master or Agile Project Manager compared to an traditional project manager. This mindset leads to a different way of acting on a day to day basis. In this workshop we will work out with the attendees what differences and similarities do have both roles and in which way can we identify that we are acting agile or non agile.
Genügt es agil zu sein oder hat XP einen Mehrwert? (Johannes Link), Tuesday 23. November 2004, 15:30-17:00Nach dem großen Aufruhr - wenn nicht gar Hype - zu Beginn diesen Jahrtausends ist es mittlerweile ruhiger um Extreme Programming geworden; vielen genügt es mittlerweile sich als "agil" im weitesten Sinne zu bezeichnen. Woran liegt das eigentlich?
Die Diskussion möchte beleuchten, ob und welche wesentlichen Unterschiede es zwischen XP und "schwächeren" Ausprägungen agiler Vorgehensweisen gibt und ob wir uns in Zukunft mit einfacher statt extremer Agilität zufrieden geben sollten. Eingeladen:
Refactorings in großen Softwareprojekten (Martin Lippert, Stefan Roock), Tuesday 23. November 2004, 15:30-17:00Refactoring bezeichnet die inkrementelle Strukturverbesserung von Code. Beim Refactoring wird ein bestehendes Design verändert, ohne das Verhalten der Software zu verändern. Der Vortrag beschreibt die Erfahrungen der Referenten in kommerziellen Projekten mit großen Refactorings und gibt eine Reihe von Tipps und Tricks, wie mit großen Refactorings in Entwicklungsprojekten umgegangen werden kann.
|