scholarly journals Enabling and Limiting factors in eXtreme Programming (XP) with Evaluation Framework

SCITECH Nepal ◽  
2019 ◽  
Vol 14 (1) ◽  
pp. 50-62
Author(s):  
Sundar Kunwar

As agile software development methodologies are used in many domains and come with different shapes and sizes, it is one of the complex human endeavors. Extreme Programming (XP) is one of the well-known agile software development methodologies and is driven by a set of values including simplicity, communication, feedback and courage, but lacks the mechanism to measure these values demanding the evaluation framework to make it measurable and attainable. The main aim of this study is to build the software process improvement model that can be used for evaluating XP values and practices. The proposed XP evaluation framework in this study is XP focused and evaluates the XP project, product and practices. The XP evaluation framework is a collection of some new and validated metrics used for evaluating XP projects, XP practices, XP products and some additional factors concerned with XP. The evaluation framework for extreme programming is basically based on the assessment and evaluation of various project characteristics, extreme programming characteristics, product characteristics and other additional characteristics. The metrics used for assessments and evaluations of XP are designed to be simple, precise, understandable, economical, timely, consistent, accountable, unambiguous, suitable and reliable.

SCITECH Nepal ◽  
2018 ◽  
Vol 13 (1) ◽  
pp. 9-15
Author(s):  
Sundar Kunwar

Software development methodologies have been enhancing significantly all the time and have drawn the attention of software professionals from past few years. The software development methodologies are expanding rigorously with wide range of diverse fields and have become more complex demanding the agility to rapidly changing needs of the customers. As a result, agile software development methodologies have evolved and gaining popularity day by day. Agile software development methodologies have come up with modifications demanded in traditional software development process to make them faster; more flexible, light weighted and productive. Extreme Programming (XP) is one of the well-known agile software development methodologies and is driven by a set of values including simplicity, communication, feedback and courage. Planning game, very short release stories and test first coding are some interesting extreme practices of XP; however, it is criticized for some deficiencies like light weight requirement, onsite customer, pair programming and so on. The study has only focused on only one of the most criticized extreme practice-lightweight requirement and has followed agile modelling approach to make improvement on requirement engineering process in XP. Requirements are the user stories that consist of a few sentences (1-3 sentences) written on an index card which describes the functionality given by single onsite customer in XP. There is lack of analysis of stakeholders and their roles in requirement process. Therefore, it is very difficult to know the specific requirements of the specific stakeholder in XP. This means that the requirement engineering process is incomplete in XP. This may result high chances of providing deficient requirements. Agile Modelling (AM) is the chaordic practice based methodology for effective modelling. The interesting part of AM is that it does not tell how to model, but tells about how to be effective as modellers. A Scenario Based Requirement Engineering (SERE) is proposed using AM as alternative to light weighted requirement which one of the most criticized extreme practice of XP. SERE is the implemented description of techniques that helps to understand the task related activities and also facilitates communication among stakeholders and experts. Stakeholders are analysed for understanding a system by identifying the stakeholders in the system and assessing their respective requirements and influence on the system. This will help to get better requirements for system development, but still needs to be validated.


Author(s):  
Gopalkrishna Waja ◽  
Jill Shah ◽  
Pankti Nanavati

Agile Software Development plays a quintessential part in modern day software development. The term Agile refers to frequent reassessment and adaptation of plans and techniques and dividing tasks into shorter tasks for efficiency. Agile Software Development differs considerably from Traditional Software Development Methodology. Agile methodology aims to deliver features of a software project in small steps within a short duration of time (i.e., iterations). Hence, it becomes necessary to use agile software development methodology in todays’ fast-paced revolutionizing software industry. This paper discusses the important subtopics of Agile Software Development which gathered by reviewing/surveying of research papers. First, is the Agile Planning Life Cycle which consists of various stages such as pre-planning, planning, release planning and product backlog management. In the next section, principles such as Scrum, Extreme Programming, Kanban and Lean are discussed. The last section comprises the impact of Agile principles on software quality.


Repositor ◽  
2020 ◽  
Vol 2 (3) ◽  
pp. 261
Author(s):  
Muhammad Ulfi ◽  
Gita Indah Marthasari ◽  
Ilyas Nuryasin

CV. Todjoe Sinar Group merupakan salah satu perusahaan perusahaan yang bergerak di bidang percetakan. Beberapa masalah yang terjadi dalam pelaksanaan proses bisnis disebabkan oleh pengelolaan proses bisnis yang dijalankan secara manual. Oleh karena itu, diperlukan suatu sistem informasi yang dapat dibangun secara tepat dan cepat. Metode pengembangan perangkat lunak yang dapat memenuhi hal tersebut termasuk kedalam agile software development. Salah satu metode yang termasuk kedalam agile software development adalah Personal Extreme Programming atau PXP. PXP merupakan metode pengembangan dari Extreme Programming yang disesuaikan agar dapat dikerjakan oleh pengembang tunggal. Sistem yang akan dibangun dalam penelitian ini merupakan sistem manajemen transaksi perusahaan. Kebutuhan sistem didapat pada fase requirements. Tahap pengembangan akan dilanjutkan dengan perencanaan iterasi dengan menentukan prioritas kebutuhan dan diskusi bersama. Pengembangan sistem akan dilakukan secara iteratif berdasarkan perencanaan yang telah dilakukan. Apabila terdapat perubahan atau penambahan kebutuhan, maka akan dilakukan perencanaan ulang. Berdasarkan hasil penelitian ini, PXP dapat diimplementasikan dalam studi kasus ini. Kemampuan, pemahaman, dan pengalaman dari seorang pengembang dalam mengerjakan suatu sistem dapat menentukan kesesuaian estimasi pengerjaan sistem dalam metode PXP. Interaksi dengan klien berperan penting dalam proses pengembangan sistem agar proses pengembangan sistem tetap terarah sesuai dengan kebutuhan klien.


Author(s):  
Vinay Kukreja ◽  
Amitoj Singh

In the globalization of fast changing business and technology environment, it becomes very important to respond quickly to changing user requirements. Traditional methodologies are not appropriate for the projects where user requirements are not fixed. Agile methodologies have been developed to cope up with user changing requirements and emphasize more on working software and customer collaboration. Agile is an umbrella term and it is used for many software development methodologies which shares common characteristics. This chapter mainly focuses on the working methodology of agile development and the usage areas of industry where agile development is implemented. Agile software development is difficult in distributed environment as the team members are at distributed locations. This chapter discusses agile industry applicability enablers which are useful for agile software development in distributed environment.


Author(s):  
Muhammad Aminu Umar ◽  
Sheidu Salami Tenuche ◽  
Sahabi Ali Yusuf ◽  
Aminu Onimisi Abdulsalami ◽  
Aliyu Muhammad Kufena

As the popularity and acceptance of agile software development methodologies increases, the need to integrate usability engineering in the design and development processes is imperative. While, agile the focus is on technical and functional requirements not on end-user interaction, usability is usually only dealt with on the side. Combining this two in practice will go a long way in development of better product. Since the success and acceptance of software product depends not only on the technologies used but how well it integrates user-oriented methods. Therefore, this chapter puts together works on how usability engineering has been integrated with agile processes.


Sign in / Sign up

Export Citation Format

Share Document