XP Day 2006More than XP. More than one day. |
|
|
ProgrammeMonday 27 November: Day One
The organisers reserve the right to make changes to the programme and speakers, or to cancel sessions if enrolment criteria are not met or when conditions beyond our control prevail. Tuesday 28 November: Day Two
The organisers reserve the right to make changes to the programme and speakers, or to cancel sessions if enrolment criteria are not met or when conditions beyond our control prevail. Introduction to AgileEmbracing Change: An Introduction to Agile Software DevelopmentClarke ChingMonday 27 November, 2006. 11:00am to 12:00 noon The software development industry is a paradox: on the one hand software is becoming increasingly pervasive and adds huge value to society, but on the other hand, our industry remains plagued by failure. Clarke will describe how a simple misunderstanding of quality principles during the 1970's resulted in the widespread adoption of development methods - the waterfall model and it's modern equivalent the "V" model - which are simply unsuitable for product and software development work. He will describe how Agile development is based on a more appropriate quality model, how Agile works, why Agile works, and - most importantly - why Agile is hard work. Clarke Ching is a New Zealander who now calls Scotland home. He is a passionate advocate of agile software development and is chairman of AgileScotland special interest group. He is a frequent speaker and part-time lecturer on agile methods. Clarke has an MBA specialising in Technology management and is a senior consultant with VISION Consulting. He is currently writing a "business novel" - see www.RollingRocksDownhill.com - which shows how Lean, Quality and Constraints Management thinking SHOULD be applied to software and product development organisations. An Introduction to XP - Making Everything Crystal ClearAndy Pols and Romilly CockingMonday 27 November, 2006. 12:15pm to 1:15pm In this introductory session Andy and Romilly will try to evoke some of the fun and exhileration that XP teams can expect as they work. It's easy to read about the key practices and values of XP, but not so easy to relate them to real day-to-day project experiences. After a brief introduction, the session will run an accelerated simulation of a day in the life of an XP team. See the developers, customer and coach in action in this fast-paced session and try to guess what will happen next! Andy Pols is a software requirements and agile delivery expert. He runs Pols Consulting, a company helping clients focus on what's important - understanding the business value of what they do. Ultimately, he helps teams cut through the haze and deliver quality products. He is a co-author of "Patterns for Effective Use Cases", writer of numerous articles, a regular speaker at conferences, a founder member of the Highgate Guild and a regular at London's Extreme Tuesday Club (XtC). Romilly Cocking loves evaluating disruptive technologies and helping his clients adopt the ones that work. He's a grizzled veteran of the agile movement; he inadvertently discovered pair progamming in the late 1970s. Like Andy, he's a founder member of the Highgate Guild and a regular at XtC. He's chairman designate for the annual BCS SPA conferences in 2008/9. An Introduction To ScrumJoseph PelrineTuesday 28 November, 2006. 10:25am to 11:25 am Agile software development methodologies, XP being the most known one, are becoming more and more accepted. They take the different nature of software seriously and help in delivering usable software to the needs of the customer on time and on budget. At the same time agile methodlogies minimize the risks, and even if a project should be stopped for whatever reason, the customer has not wasted his investment but owns a working system which operates to his specification up that time. But how would one control and manage projects using such methodologies? Classical project management has typically still the "waterfall" in mind and isn't well suited at all. Scrum is an iterative, incremental process for developing any product or managing any work. It produces a potentially shippable set of functionality at the end of every iteration. Scrumis a proven and successful project management methodology that fits nicely with agile processes - especially XP. We will show and explain the underlying principles. report from real life projects, and answer your questions about Scrum. Joseph Pelrine is C*O of MetaProg, a company devoted to increasing the quality of software and its development process, and is Europe's senior certified ScrumMaster Practitioner and Trainer as well as one of Europe's leading experts on eXtreme Programming . He has had a successful career as software developer, project manager and consultant, and has spoken about it at such diverse places as IBM, OOPSLA and the Chaos Computer Club. His work focus is on field of social complexity science and its application to Agile processes. The Toyota Way Of ManagingPascal van CauwenbergheTuesday 28 November, 2006. 11:40am to 12:40pm Jeffrey Liker explained the "Toyota Way" through 14 principles in his best-selling book. In this presentation, we go over each of the principles. Through the experiences of the presenter in applying these principles, we explore the similarities and differences between Lean and Agile. The 14 principles deal with
Pascal van Cauwenberghe works as a consultant working in Belgium with his company Nayima. He is interested in
Agile Adoption ExperiencesTuesday 28 November, 2006. 1:30pm to 3:30pm
Agile Adoption in BT ExperiencesTuesday 28 November, 2006. 3:45pm to 4:45pm
PeopleWareTurning Up The Heat (Without Getting Burnt)Joseph Pelrine and Ben FuchsMonday 27 November, 2006. 11:00am to 1:15pm This workshop will look at team dynamics as complex adaptive systems. It will provide tools for team leaders and members to make effective interventions using an iterative process similar to the iterative incremental process of many Agile development methods. Some topics we will explore will be:
Joseph Pelrine is C*O of MetaProg, a company devoted to increasing the quality of software and its development process, and is Europe's senior certified ScrumMaster Practitioner and Trainer as well as one of Europe's leading experts on eXtreme Programming . He has had a successful career as software developer, project manager and consultant, and has spoken about it at such diverse places as IBM, OOPSLA and the Chaos Computer Club. His work focus is on field of social complexity science and its application to Agile processes. Are We Nearly There Yet?Ivan MooreMonday 27 November, 2006. 2:15pm to 4:15pm On some agile projects, tracking is not done particularly well. Often stories are considered done that aren't really finished. Projecting release plans based on velocity is often less accurate than it could be. As a result of poor tracking, some agile projects suffer from unpredictable release dates and project overruns - just like more traditional projects. This interactive tutorial describes techniques for tracking agile projects, and making the tracking visible. Tracking is directly related to planning, estimating and acceptance testing - their relationship to tracking will be discussed. Ivan Moore is a Big Cheese at Team Optimization. He has been programming for over 20 years and yet he still regularly makes mistakes. That's why he's interested in iterative and incremental development, test driven development, refactoring and drinking tea. He has worked as a developer, XP coach, team lead and windsurfing instructor. Ivan has presented papers, tutorials and workshops at numerous international conferences, such as OOPSLA, XP, XPDay, SPA, ACCU, Agile North, TOOLS and ECOOP. He developed Jester and MockMaker, two XP related open source projects. Why Is Simple So Difficult?Facilitated by Nat Pryce and Jonathan ClarkeMonday 27 November, 2006. 4:45pm to 5:45pm A facilitated goldfish-bowl discussion about simplicity and its opposite.
Nat Pryce is an independent consultant. He is the co-author of jMock and nMock testing frameworks. He is a long standing member of the Extreme Tuesday Club, a founding organiser of XP Day, and joint programme chair of XP Day 2004 and XP Day 2005. This year he is the Poster Chair. He has spoken at many international conferences, including SPA, JAOO, OOPSLA and ACCU as well as previous XP Days. With Steve Freeman he was awarded a joint Gordon Pask Award for contributions to the Agile community. Jonathan Clarke is Chairman of Whitespace Software Limited, who develop database systems for the insurance industry. Whitespace have a good record of delivering waterfall projects. Jonathan intends to introduce XP through the company on a project-by-project basis. He simultaneously works on outside projects under his Bitwix identity, learning from others' successes and failures. Resistance As A ResourceLasse KoskelaTuesday 28 November, 2006. 10:25am to 12:40pm The objective of the workshop is to increase our awareness of different forms of resistance to change and new ideas, to improve our ability to see the change from the resistor's perspective, and to learn about solutions that can and have helped in dealing with such resistance. For many of us who promote the adoption of agile methods or related techniques, dealing with resistance is part of our every day life. With this in mind, this session strives to help the participating change agents to collaborate on the kinds of problems and solutions they face in their working environment. Lasse Koskela is a methodology specialist at Reaktor Innovations. Lasse entered the IT industry 7 years ago and has since held roles varying from development to project management and training to consulting, dipping his toes to sales every once in a while. He started promoting agile methods in Finland in 2002, ramped up the local Agile Seminars in 2005, and is finally in the process of putting in the finishing touches for his book on test-driven development for Manning Publications. Collaborative Workspaces: Keeping The Furniture Police At BayMike Hill and Rachel DaviesTuesday 28 November, 2006. 1:30pm to 3:30pm One of the key success factors in Agile projects is the workspace environment. Does the workspace facilitate or hinder collaboration? E.g. is there a wall that can be turned into an information radiator? Which team members should sit next to each other? Are there frequent interruptions? How does the workspace meet health & safety requirements? In this workshop, we will explore issues of project workspace design. By creating the "workspace from hell" and the "workspace from heaven", we will identify key aspects of both successful and unsuccessful environments. For hellish environments we will investigate how we can workaround the difficulties; for heavenly environments will we identify weaknesses. Mike Hill is a developer who has been working in software development teams for well over 10 years. He particularly enjoys agile software development and has worked with teams adopting agile approaches at BNP Paribas, AOL, ThoughtWorks, Egg and Kizoom. Last year Mike presented "Storytelling with FIT" at XPDay, SPA and Agile 2006. Rachel Davies is a consultant and facilitator in United Kingdom. She has been working in the software industry for nearly 20 years. She coaches teams in XP and Scrum and advocates the use of frequent retrospectives to help teams adapt their process to their context. Rachel is a frequent presenter at agile conferences and chair of the Agile Alliance and secretary of British Computer Society Software Practice Advancement specialist group. Courage How Brave Are You?Facilitated By Giovanni AsproniTuesday 28 November, 2006. 3:45pm to 4:45pm A goldfish-bowl discussion about courage and it's opposite: fear. Courage is one of the values of XP and Agile Development: the courage of being accountable; the courage of trying new things when old ones don't work; etc. However, software development is often driven by fear: fear of missing deadlines; fear of losing the job; fear of losing a customer; etc. Fear usually leads to inferior results, or even failure--I have seen examples of both--not to mention stress and high employee turnover. On the other hand courage, can help in making better products while having more fun. However it can be very expensive: making a mistake can--in some environments--lead to dire consequencies such as job losses. The goal of the session is to share both positive and negative experiences while trying to introduce this value in the work-place, and find ways to increase the success rate in the future. Giovanni Asproni is a consultant with more than ten years of professional experience in which he had the opportunity to work in several different roles, from Programmer to Senior Architect and Technical Project Leader, in a variety of application domains including CASE tools, telecommunications, bioinformatics, and, more recently, banking. His main interests are agile software development, software architecture and design, project management, and, last but not least, writing code (especially in C++, Java, and Python). He is an expert in Object Oriented Design and Development, Agile Software Development, and a Certified Scrum Master. Customer CommunityAwesome Acceptance TestingJoe Walnes and Dan NorthMonday 27 November, 2006. 11:00am to 1:15pm Acceptance tests are a lot more than regression tests, they are a specification of what a system should do. They are written in a way that describes business intent by example, and can be created before the implementation, helping customers clarify vague requirements and developers to understand these. Traditional record and playback tools don't cater for this approach. This session demonstrates:
Joe Walnes was found in a small shrubbery near the M25 about 12 years ago. Dan North was the unfortunate side effect of trying to mate a hedgehog with a strimmer. Neither of them knows how to juggle, except Joe. Programmers are from Mars, Customers are from Venus: A Practical Guide to Working with Your XP CustomerAngela Martin, Robert Biddle and James NobleMonday 27 November, 2006. 2:15pm to 5:45pm This interactive and informative session will introduce you to practices that will increase the effectiveness of the customer on your XP project. Customers have one of the most complex and difficult roles on a project, yet XP includes very few practices that support the customer in their role — the aim of this tutorial is to change that. Over the last three years, we have investigated many projects around the world to identify how customers succeed in this complex and difficult task — discovering not what people think should have happened, but what really happened and what actually worked! This tutorial distils this research, grounded in practical experience, into a 3 hour session, so that by the end of this tutorial you will have gained:
Angela Martin is a consultant with eleven years of professional software development experience; she works directly with programmers and customers on agile projects to deliver software that works. She is also completing her PhD research at Victoria University of Wellington, New Zealand, supervised by James Noble and Robert Biddle. Her research utilises in-depth case studies of the XP Customer Role, on a wide range of projects world-wide. Angela is also an Agile Alliance Board Member. Robert Biddle and James Noble are keynote speakers Managing Uncertainty and Risk Using Real OptionsChris MattsTuesday 28 November, 2006. 10:25am to 11:25 am Banks use financial options to manage risk. We have risks on IT projects. We can use the banks' understanding of risk and options to help us manage those risks. This session will introduce Real Options and explains how they can be used. As an aside, we show that Real Options are one of the main reasons for Toyota's success. We have games, a chalk and talk and a discussion. Those of you who like powerpoint presentations are advised to attend another session. Chris Matts came into the world a perfected formed reusable project component stamped from the William Royce (Page 1) mold. He went travelling in Europe and when he came back he did not have a desk. So he shared one with a colleague and as there was only room for one computer, they ended up pairing on tasks. He particularly enjoyed this way of working and sought out others who were prepared to do his work for him. A kindly gent, who we will call Andy Pols in order to protect his identity, wrote an article for him and introduced him to some fine folks in Salt Lake City (where the Liquour laws are strange and you need a red flag to cross the road). It was there that he met Tom and Mary who introduced him to (Real) options. Real Options sounded like Financial Options which were something people paid money for in order to manage their risk. Attracted by the scent of money, Chris went hunting for Real Options...... and found them. Literate Testing, Using Code to Communicate with CustomersRobert Chatley and Tamara PetroffTuesday 28 November, 2006. 11:40am to 12:40pm Functional or acceptance tests are there to ensure that the system does what the customer cares most about. It follows that customers will want to verify that the automated test suite tests the right things, and developers will want an effective way of communicating what is being tested to their customers. The trouble is, functional tests are written in code, the native language of developers but incomprehensible to most customers and their representatives such as business analysts. As agile people, we suspect that adding layers of documentation won't help. Is there a way of using the code itself to achieve this level of communication between developers and customers? This session investigates a way of doing just that. We will introduce some examples of testing techniques that we have developed that use a "literate" style. Such a technique results in test code being produced that is readable and understandable by non programmers, who can validate the tests being produced. Code is the most common artifact produced by development teams, so we aim to make it possible for developers and non-developers alike to use code as the focus for discussion. The customer then knows what tests the developer is using, and the developer knows that their tests match the customer's expectations. Robert Chatley is a software engineering practitioner and researcher. He has a PhD in software engineering from Imperial College London, and in the last few years has published and presented papers at international conferences including ICSE, FSE, ETAPS and RE (and XPDay of course). He has worked in a number of industries, and is currently a member of the XP team at Kizoom in London. Robert is programme co-chair for XPDay6. Tamara Petroff is Head of Operations at Kizoom. In this capacity, she leads an XP development team of 30 people, and strives to extend agile principles to other aspects of the organisation. Prior to Kizoom, Tamara has managed IT projects and departments at ING, Tallan, and Northrop Grumman. She has always rebelled against heavyweight processes, and since 1995 has been using techniques such as RAD/JAD and spiral development. Tamara was once told by an irritated advocate of CMM, "You don't use any processes, you just have smart people and get lucky." She thought this sounded like a good idea, and has been working on getting better at generating that type of luck ever since. Tamara holds an MA in Mathematics from UCLA. Metaphor and Stories: How Postmodern Folk Tales are the Secret to Enterprise Customer-Developer Communication.James Noble and Robert BiddleThis tutorial is not included in your conference registration. Please register for it separately Tuesday 28 November, 2006. 1:30pm to 4:45pm In making effective software, the problem is not only building the software right, but also building the right software. Even with excellent business analysis and excellent programming, significant problems arise in connecting the two. This is where the ideals of modernism let us down, because software development is not like a factory assembly-line, and an over-reliance on compartmentalised specifications being fulfilled will not lead to success. In this tutorial, we explore postmodern approaches to building the right software. Instead of rigid machine-line specifications, we can work with human strengths in dialogue and discussion. We can use analogy and metaphor, and relate the known to the unknown. We can emphasise story-telling, but also story-listening and story-retelling. We can involve many stories that work together, we can work with similarities and accommodate differences. We can develop shared understanding. In doing so, we can draw on a rich heritage from the humanities. But the roots of postmoderism have already taken hold in software development. From use cases to system metaphor, from code-reviews to pair programming, from objects to aspects, these postmodern ideas include many of the most influential elements of agile development. Our contribution is to show how and why these work, suggest new connections to be made, and to explain the implications for our daily work. Lean and AgileHere are some relevant articles: Developer Community TrackExperiments in Agile Estimation TechniquesNils Haugen, Mike Hill and Stein GrimstadMonday 27 November, 2006. 11:00am to 1:15pm Planning poker is a group estimation technique that's surprisingly fun. This workshop will introduce the technique, and run an experiment to explore how effective (or not) planning poker is with respect to individual estimation. Aside from learning planning poker and being guinea pigs, participants will learn about their own personal estimation bias and get to hear about our own agile estimation experiences. Nils Haugen is an advisor at Objectnet in Norway and an agile developer and coach. He has been working with large distributed object-oriented applications for companies in various industries since 1998. Nils has enjoyed working with XP/Agile teams at ThoughtWorks, and is an experienced speaker on topics in Java and Agile software development at national and international conferences. He holds a MEng degree in Computer Science from the Norwegian University of Science and Technology. Mike Hill is a developer who has been working in software development teams for well over 10 years. He particularly enjoys agile software development and has worked with teams adopting agile approaches at BNP Paribas, AOL, ThoughtWorks, Egg and Kizoom. Last year Mike presented "Storytelling with FIT" at XPDay, SPA and Agile 2006. Patterns of Refactoring.Joshua KerievskyThis tutorial is not included in your conference registration. Please register for it separately Monday 27 November, 2006. 2:15pm to 5:45pm In my book, Refactoring to Patterns, I showed how to tie together sequences of low-level refactorings to transform designs to, towards or away from software patterns. In writing that book, I learned that there is indeed an art to refactoring, a way of implementing important design improvements in safe and efficient ways. In the afterward to the book, John Brant and Don Roberts (co-creators of the world's first refactoring tool) suggested that the true value of the book lies not in the actual steps to achieve a particular pattern but in understanding the thought processes that lead to those steps. They called those thought processes "patterns of refactoring." In this tutorial, we will explore the art of refactoring and a new, emerging body of work called Patterns of Refactoring. What's This Continuous Integration Thing AnywayLindsay McEwan & Duncan PierceMonday 27 November, 2006. 2:15pm to 4:15pm If you don't know what Continuous Integration is, or you do but have problems. Our intention is for people to leave knowing what Continuous Integration looks and feels like, how to get there, and understand why it is important. Lindsay McEwan is an independant consultant and developer. Previously developer and project manager at Nonlinear Dynamics, he managed the company's transition to agile methods. Lindsay aims to bring value and repeatable quick delivery to software, using agile methods and techniques. Duncan Pierce has been helping companies including Egg and British Telecom improve their software development since 2001. He specializes in process-oriented effectiveness coaching for Agile development and management teams. Duncan regularly speaks at conferences in the UK, Europe and the US and was a founder of the XPDay conferences. He is a long-standing member of London’s Extreme Tuesday Club (XTC), a founding member of the Highgate Guild and director of the Agile Alliance’s Agile Narratives programme. He can be reached at duncan.pierce@amarinda.com. His homepage is at duncanpierce.org. Refactoring Databases for Fun, Profit and SanitySam Newman and Graham TackleyMonday 27 November, 2006. 4:45pm to 5:45pm This session presents some real-world experiences of using some of the techniques outlined Scott W. Ambler and Pramod Sadalage's Database Refactoring book (http://databaserefactoring.com/). It will give a brief introduction to the ideas in the book, and will cover in more detail those techniques which have been most useful on recent projects the presenters have been involved with. It will also introduce the open source project, DBDeploy, which can be used for applying incremental changes to a database. Sam Newman is a Consultant at ThoughtWorks. His day job tends to involve writing code and talking about techy things. His night job involves blogging and talking about Web 2.0. Sam has presented at both XP Day 2005 and Agile 2006. He has written no relevant books. He curates the occasional London 2.0 meet-ups. Putting The Science Back Into Computer Science: Measuring The Effect of Test-Driven DevelopmentKeith BraithwaiteTuesday 28 November, 2006. 10:25am to 11:25 am An overview of the wide-ranging science of "scale-free" or "power-law" distributions will lead into a discussion of the literature concerning how these can be observed in the run time and the compile time structure of object-oriented software, which will be carrtied forward again into an exploration of how some of these properties differ between codebases known to have been written TDD and otherwise. A comparison will be made with other disucssions of the differences between TDD and non-TDD code, and broader "alexandrian" questions of quality in design and elsewhere. Then attendees will submit their own Java (only, for the moment) code to measurement using some automation and we will attempt to relate the results of that back to the context in which the code was written. Keith Braithwaite is currently a Business Unit Leader at Zuhlke Engineering Agile Development with C++Kevlin HenneyTuesday 28 November, 2006. 11:40am to 12:40pm There are a number of considerations that C++ developers need to address if they want to follow a more agile approach to development. Some of these considerations are technical, such as following an aggressive approach to dependency management and a constrained rather than liberal use of the language's features. However, the considerations that perhaps present the greater challenge are the non-technical ones, particularly those that might be considered cultural. The common tendency towards overly complex and 'clever' solutions and the aversion to testing and refactoring appears stronger amongst C++ developers than, say, Java developers. This session highlights a number of the issues that C++ developers are likely to encounter when attempting agile development. Concrete suggestions for what to follow and what to leave alone are offered. Comments, experiences and suggestions from attendees are encouraged. Kevlin Henney is an independent consultant and trainer. His work variously covers a cross section of development concerns, from development process concepts to detailed practice pragmatics, from architecture and general patterns to programming detail and languages. He has been involved in helping a number of teams and individuals improve the state of their practice. He has run sessions at a number of conferences (ACCU, JAOO, JavaZone, OOP, OOPSLA, OT, etc) and written columns for various magazines and sites (The Register, Application Development Advisor, C/C++ Users Journal, Java Report, etc). Are Your Tests Really Driving Your Development?Nat Pryce and Steve FreemanTuesday 28 November, 1:30pm to 4:45pm Everybody knows that TDD stands for Test Driven Development. However, people too often concentrate on the words "Test" and "Development" and don't consider the what the word "Driven" really implies. For tests to drive development they must do more than just test that code performs its required functionality: they must clearly express that required functionality to the reader. That is, they must be clear specifications of the required functionality. Tests that are not written with their role as specifications in mind can be very confusing to read. The difficulty in understanding what they are testing can greatly reduce the velocity at which a codebase can be changed. In this workshop/tutorial developers will learn to:
Nat Pryce is an independent consultant. He is the co-author of jMock and nMock testing frameworks. He is a long standing member of the Extreme Tuesday Club, a founding organiser of XP Day, and joint programme chair of XP Day 2004 and XP Day 2005. This year he is the Poster Chair. He has spoken at many international conferences, including SPA, JAOO, OOPSLA and ACCU as well as previous XP Days. With Steve Freeman he was awarded a joint Gordon Pask Award for contributions to the Agile community. Steve Freeman is an independent consultant specialising in Agile software delivery. He is the co-author of jMock and nMock testing frameworks. He is one of the 2006 winners of the Agile Alliance Gordon Pask award. He is a long standing member of the Extreme Tuesday Club. He was Conference Chair of the first XpDay and since than has been Programme Chair, Treasurer, and Keynote Chair. The organisers reserve the right to make changes to the programme and speakers, or to cancel sessions if enrolment criteria are not met or when conditions beyond our control prevail. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||