Proposal of Enhanced Extreme Programming Model

Extreme programming is one of the commonly used agile methodologies in software development. It is very responsive to changing requirements even in the late phases of the project. However, quality activities in extreme programming phases are implemented sequentially along with the activities that work on the functional requirements. This reduces the agility to deliver increments continuously and makes an inverse relationship between quality and agility. Due to this relationship, extreme programming does not consume enough time on making extensive documentation and robust design. To overcome these issues, an enhanced extreme programming model is proposed. Enhanced extreme programming introduces parallelism in the activities' execution through putting quality activities into a separate execution line. In this way, the focus on delivering increments quickly is achieved without affecting the quality of the final output. In enhanced extreme programming, the quality concept is extended to include refinement of all phases of classical extreme programming and creating architectural design based on the refined design documents.

[1]  Broderick Crawford,et al.  Agile software engineering as creative work , 2012, 2012 5th International Workshop on Co-operative and Human Aspects of Software Engineering (CHASE).

[2]  F. Carvalho,et al.  Service Agile Development Using XP , 2013, 2013 IEEE Seventh International Symposium on Service-Oriented System Engineering.

[3]  Yao Lu,et al.  Application of agile method in the enterprise website backstage management system: Practices for extreme programming , 2012, 2012 2nd International Conference on Consumer Electronics, Communications and Networks (CECNet).

[4]  Alberto Sillitti,et al.  Cooperation, collaboration and pair-programming: Field studies on backup behavior , 2014, J. Syst. Softw..

[5]  Nick Z. Zacharis,et al.  Measuring the Effects of Virtual Pair Programming in an Introductory Programming Java Course , 2011, IEEE Transactions on Education.

[6]  Luigi Benedicenti,et al.  Prioritizing CRC cards as a simple design tool in extreme programming , 2013, 2013 26th IEEE Canadian Conference on Electrical and Computer Engineering (CCECE).

[7]  George Michaelides,et al.  Successful extreme programming: Fidelity to the methodology or good teamworking? , 2013, Inf. Softw. Technol..

[8]  Kevin Roebuck,et al.  Encryption: High-impact Strategies - What You Need to Know Definitions, Adoptions, Impact, Benefits, Maturity, Vendors , 2011 .

[9]  Tommi Tervonen,et al.  Quantitative release planning in extreme programming , 2011, Inf. Softw. Technol..

[10]  Zhai Li-li,et al.  Research on Requirement for High-quality Model of Extreme Programming , 2011, 2011 International Conference on Information Management, Innovation Management and Industrial Engineering.

[11]  Alberto Sillitti,et al.  Pair Programming and Software Defects--A Large, Industrial Case Study , 2013, IEEE Transactions on Software Engineering.

[12]  Zijiang Yang,et al.  The impact of absorptive capacity on the ex-post adoption of agile methods: The case of Extreme Programming model , 2011, 2011 IEEE International Conference on Industrial Engineering and Engineering Management.

[13]  Feng Ji,et al.  Comparing extreme programming and Waterfall project results , 2011, 2011 24th IEEE-CS Conference on Software Engineering Education and Training (CSEE&T).

[14]  M. Rizwan Jameel Qureshi,et al.  Agile software development methodology for medium and large projects , 2012, IET Softw..

[15]  Kathy Schwalbe,et al.  Information Technology Project Management , 1999 .

[16]  Norita Md Norwawi,et al.  Improved extreme programming methodology with inbuilt security , 2011, 2011 IEEE Symposium on Computers & Informatics.

[17]  El-Tigani B. Abdelsatir,et al.  Extreme programming applied in a large-scale distributed system , 2013, 2013 INTERNATIONAL CONFERENCE ON COMPUTING, ELECTRICAL AND ELECTRONIC ENGINEERING (ICCEEE).