Xp Project Management
Total Page:16
File Type:pdf, Size:1020Kb
University of Montana ScholarWorks at University of Montana Graduate Student Theses, Dissertations, & Professional Papers Graduate School 2007 XP PROJECT MANAGEMENT Craig William Macholz The University of Montana Follow this and additional works at: https://scholarworks.umt.edu/etd Let us know how access to this document benefits ou.y Recommended Citation Macholz, Craig William, "XP PROJECT MANAGEMENT" (2007). Graduate Student Theses, Dissertations, & Professional Papers. 1201. https://scholarworks.umt.edu/etd/1201 This Thesis is brought to you for free and open access by the Graduate School at ScholarWorks at University of Montana. It has been accepted for inclusion in Graduate Student Theses, Dissertations, & Professional Papers by an authorized administrator of ScholarWorks at University of Montana. For more information, please contact [email protected]. XP PROJECT MANAGEMENT By Craig William Macholz BS in Business Administration, The University of Montana, Missoula, MT, 1997 Thesis presented in partial fulfillment of the requirements for the degree of Master of Science in Computer Science The University of Montana Missoula, MT Autumn 2007 Approved by: Dr. David A. Strobel, Dean Graduate School Dr. Joel Henry Computer Science Dr. Yolanda Reimer Computer Science Dr. Shawn Clouse Business Administration i Macholz, Craig, M.S., December 2007 Computer Science Extreme Programming Project Management Chairperson: Dr. Joel Henry Extreme programming project management examines software development theory, the extreme programming process, and the essentials of standard project management as applied to software projects. The goal of this thesis is to integrate standard software project management practices, where possible, into the extreme programming process. Thus creating a management framework for extreme programming project management that gives the extreme programming managers the management activities and tools to utilize the extreme programming process within a wider range of commercial computing organizations, relationships, and development projects. The author speculates that the lack of organizational adoption and mainstream integration of the extreme programming process is connected to the lack of standard project management structure that allows for greater control of scheduling, cost, and quality. This paper will create a basic framework that will be used to improve the extreme programming process and identify its shortcomings. ii ACKNOWLEGEMENTS Thank you to Joel Henry, Ph.D., Shawn Clouse, Ph.D., and Yolanda Reimer, Ph.D for their valued input and support. Special thanks to my wife Lee, daughter Kaylee and my parents, Jim and Sue Macholz. iii TABLE OF CONTENTS LIST OF TABLES .......................................................................................VII LIST OF ILLUSTRATIONS ....................................................................................VII CHAPTER 1 – INTRODUCTION ...............................................................................1 1.1– PROBLEM STATEMENT...............................................................................................................................1 1.2 – APPROACH/METHODS...............................................................................................................................2 1.3 – SOFTWARE PROCESS BACKGROUND ........................................................................................................3 CHAPTER 2 – OVERVIEW OF EXTREME PROGRAMMING .............................7 2.1 – THE PURPOSE OF XP .................................................................................................................................8 2.2 – RIGHTS WITHIN XP...................................................................................................................................9 2.3 – XP CORE VALUES...................................................................................................................................11 2.4 – XP CORE PRACTICES ..............................................................................................................................12 2.5 – THE PLANNING GAME.............................................................................................................................13 2.5.1 – User Stories ....................................................................................................................................13 2.5.2 – Story Estimation .............................................................................................................................16 2.5.3 – Release Planning............................................................................................................................18 2.5.4 – Iteration Planning ..........................................................................................................................20 2.6 – SMALL RELEASES....................................................................................................................................21 2.7 – SYSTEM METAPHOR................................................................................................................................21 2.8 – SIMPLE DESIGN .......................................................................................................................................22 2.9 – TESTING...................................................................................................................................................23 2.9.1 – Unit Tests........................................................................................................................................23 2.9.2 – Acceptance Tests ............................................................................................................................25 2.10 – REFACTORING .......................................................................................................................................26 2.11 – PAIR PROGRAMMING ............................................................................................................................27 2.12 – COLLECTIVE OWNERSHIP .....................................................................................................................28 2.13 – CONTINUOUS INTEGRATION .................................................................................................................29 2.13.1 – Releasing Changes .......................................................................................................................29 2.13.2 – Possible Problems and Fixes.......................................................................................................30 2.13.3 – Slow Merges .................................................................................................................................30 2.13.4 – Lost Changes ................................................................................................................................31 2.14 – 40-HOUR WORKWEEK ..........................................................................................................................31 2.15 – ON-SITE CLIENT....................................................................................................................................31 2.16 – CODING STANDARDS ............................................................................................................................32 2.17 – XP PRACTICES SUMMARY....................................................................................................................33 2.18 – ROLES OF THE XP TEAM MEMBERS.....................................................................................................34 2.18.1 – Programmer..................................................................................................................................34 2.18.2 – Customer.......................................................................................................................................35 2.18.3 – Tester ............................................................................................................................................36 2.18.4 – Tracker..........................................................................................................................................36 2.18.5 – Coach............................................................................................................................................36 2.18.6 – Consultant.....................................................................................................................................37 2.18.7 – Manager........................................................................................................................................37 2.19 – XP MANAGEMENT STRATEGY .............................................................................................................39 2.19.1 – Metrics ..........................................................................................................................................40 iv 2.19.2 – Coaching.......................................................................................................................................42 2.19.3 – Intervention...................................................................................................................................42 2.20 – FACILITIES.............................................................................................................................................43