Have you heard about Extreme Programming?

This month I attended a social event on application and software development within the commercial IT industry. We were discussing the software and system development process. One gentleman, a developer and programmer, stated that many companies still seem to focus on Implementation without understanding how important it is to transition to design and implementation with a good front process. I said that has been a consistent problem. Not enough seems to understand that requirements and architecture are essential. He asked what were some practices or activities that contributed to the success of some my projects and programs. When I indicated that many successful projects and programs that I have managed, participated in, or heard about, had some of the following elements, a gentleman said that is like Extreme Programming. But those elements are:

  • Customer and user involvement from the beginning and throughout the project/program (part of the team) Rapid development
  • Early and extensive testing
  • Rapid development when required
  • A shared management process (hands on and active participation while allowing others to do their jobs)
  • Detailed configuration/change management and quality assurance process
  • Collaboration by functional and business areas and programmers and developers
  • Iterative and incremental processes
  • A detailed but flexible development process.
  • The use and documentation of lessons learned on a continuous and daily basis
  • to name a few

This success was evident even when it was a small and large project. We see that Rational Unified Process (RUP) and other commercially developed methodologies and tools are ensuring that past best and good practices are now applied/automated and affordable (depends on what you are buyingJ) within the commercial IT industry. So these elements are not just new to Extreme Programming but just are used and improved good/best practices.

The emphasis has sometimes been too much on implementation which is understood if the client doesn’t understand the process or processes that is going to lead to success. It is up to you to communicate what is required to the client in a mutual manner that is understood, accepted, and approved. But Change is inevitable. So best and good practices have been around for a while and you may call them what you want or include them in many development processes and methodologies. Good luck.

Comments

Leave a Reply