A comparison of Extreme Programming and the Rational Unified Process from a practical perspective

Abstract

In this paper, a comparison of the Rational Unified Process (RUP) and Extreme Programming (XP) is discussed from a practical perspective. The paper starts with a short introduction to both software development methodologies and is followed by a description of similar research comparing XP and RUP. The aforementioned comparisons are from a more theoretical perspective. Therefore, this paper continues with a contribution comparing both methodologies from a practical perspective by combining multiple research sources. The conclusion of the similar comparison research is that XP and RUP are very different. After adding comparisons from a practical perspective however, the conclusion is that XP and RUP are in fact very similar when it comes to end result and usage.

Introduction

As an Informatics student one will, at some point, come into contact with software development methodologies. Most of the time however, the explanations given are short and uninformative. On top of that, the books detailing software development methodologies often contain numerous of these processes, making it hard to distinguish between them. At the end of reading such a book one has often a general idea of existing methodologies and their names; perhaps one can even list a few of their properties and general relations. What usually lacks, however, is a proper understanding of the deeper relations between these methodologies and their impact on the software and the development team.

This paper has been written as part of an Informatics course on writing scientific papers at the Open University of The Netherlands. It will discuss a comparison of the software development methodologies Extreme Programming (XP) and the Rational Unified Process (RUP). The goal is to provide the reader with a better understanding of these two methodologies from a practical point of view. To do so, this paper will provide a short introduction on both software development methodologies XP (section II) and RUP (section III), for those not yet intimately familiar with them. Afterwards, the paper will discuss in more depth, relations between RUP and XP in the form of comparisons. The implications of these comparisons however will not be discussed. The reader will have to think of those themselves. Section III will start with detailed comparisons from similar research by other researchers. This research is based on theoretical matters. Therefore, the section will end with a comparison discussion from a more practical perspective: SW-CMM adherence (a model detailing how mature a methodology is), quality of the end products, effect on teamwork, ability to adapt to a different scale and effect on the outcome of a project. Through this, this paper hopes to contribute a new overview on both XP and RUP. Section IV will provide details about the related work i.e. the sources used in writing this paper, detailing what is being discussed in outlines. Lastly, section V will contain the conclusion.

Extreme Programming explained

\label{sec:xpex}