Extreme Programming (XP) has spent the last few decades under perpetual scrutiny from software developers fixated on forward design methodologies. The idea behind all this is simple: if you want to make sure something is built well, you must first design it well, then assemble it using reliable tools. For objects such as houses, cars or tables, whose design gradually evolves over decades, the initial design methods are sufficient. Computer programs, on the other hand, are products often made for an industry that evolves at faster rates than any other. More dynamic methods are needed for this type of environment, which is why XP is a strong candidate. How the design is modified from the traditional initial design method will be discussed. The general picture obtained from a first look at the XP method tends to imply that design is a frivolous activity placed in the background after programming. While programming is incredibly important to getting anything done, it is as nothing without design as design without programming. They compensate each other for their mistakes. Programming builds the program, but leads to overly complex systems. Planning leads to well-structured systems, but no real program. As such, design is not frivolous, but neither is programming. How is it that XP actually combines design and programming in the right quantities? It tends to reiterate a certain algorithm until the project is complete: design, design implementation, then redesign and refactoring (Fowler). Meanwhile the design is kept simple (Fowler). Simple is a key word in XP. Indeed, Martin Fowler's (Fowler) essay appears to form the core of XP. However, what exactly is meant by simplicity will depend on multiple factors. Like Marti......middle of paper......consequently, changing the design pattern would be counterproductive. This does not necessarily mean, however, that design patterns always contain the solution to a problem. Instead, they provide an idea that can be modified to solve a problem. XP is an evolutionary design methodology. He religiously follows simplicity with YAGNI as his motto. To do this, it considers refactoring when necessary. This requires a redesign of the program structure, which is easier following YAGNI. Considering today's IT industry, where last-minute changes are the order of the day, his methodologies are a perfect fit. It may still feature some needed improvements unnoticed, but it appears to be a better fit for the industry than the initial design. Works Cited Fowler, Martin. "Is design dead?". Martin Fowler. N/A and Web. October 18 2013. .
tags