How to Best Integrate Agile Software Development Methods (XP and Scrum) By Introducing Usability Practices and Methods (2015)
Agile Software Development Dissertation – This dissertation aims to investigate how end user involvement can be made possible without disrupting the agile process using ground theory and practical approaches. It will attempt to integrate light-weight usability methods incorporated into the agile processes. It will also describe the key question as to how usability legit-weight methods could be integrated in agile process in order to create efficient and effective usable software in a short span of time.
This study proposes an integrated process model that will ultimately integrate Light-Weight Usability methods In Agile Software Development Processes, light-weight methods (Use case technique, Personas, low-fidelity prototyping and Guerilla testing) in agile different iterations. This would assist the design and development team to produce enhanced product that are aimed at increasing customer satisfaction while simultaneously reducing the risk of incurring additional costs due to ‘redesigns’.
To provide a clearer perspective on the direction of the research questions, the entire research will focus on agile software development or to some extent, at least compatible with agile development methods using SCRUM as a referral point due to the fact that Scrum is both the most widely used agile methodology as well as the system that is applied by the subject company. The researcher has formulated the research questions in a manner that would not only benefit the company in the case study but as well as for other companies that are similar. The proposed research questions are as follows:
- How to analyze the end user requirements in agile software development processes?
- How product evaluation with end users might be made possible in agile short iterations?
The research questions are based on the fact that although many software development companies have adopted the agile methodologies over the last decade for a variety of reasons, improving usability is rarely among these reasons. When the ratio of usability increases in importance, software developers with limited knowledge of usability or interactive interface designs are irresolute over making the new priority attuned with their development process principally due to the fact that the agile literature provides little direction. This research hopes to provide answers towards managing this scenario effectively and efficiently.
Dissertation aims and objectives
- To develop a greater understanding about agile software development processes, and to critically evaluate the existing literature to highlight its vital elements, focusing in particular on end-user requirements in context of usability.
- To provide a mechanism for product evaluation by end users in agile processes, which comprise of short iterations?
- To analyze the precedence, if any, of integrating usability with agile methods and provide a feasible framework to this hybrid approach.
- To highlight the benefits of integrating usability techniques with agile methods; and to offer guide-lines that facilitate software development companies that are using agile development processes.
- To incorporate the findings of this research, to the subject company “Easysport” and provide conclusive evidence as well recommendations, which benefits the organization in terms of efficiency and productivity.
- 22,000 words – 82 pages in length
- Excellent use of literature
- Excellent analysis of subject area
- Well written throughout
- Includes questionnaire
- Ideal for IT and software development students
1 – Introduction
Research Background and Motivation
Aims and Objectives of Research
Scope of Research
2 – Literature Review
Agile Software Development
Principles behind the Agile Manifesto
Generalized Agile Life Cycle
Agile Benefits and Limitations
User Centered Design (UCD)
Usability Engineering Life Cycle
Usability Engineering Benefits
Agility vs. Usability
Customer vs. End-Users
Agile Requirements vs. User Requirements
Agile Testing vs. Usability Testing
Usability engineering Integration in Agile Software Development
Usability Light-Weight Activities in Agile Process
User Requirement Analysis
Persona in Agile Process
Use Case Analysis in Agile Process
Low-Fidelity Prototype in Agile Process
Guerilla Testing in Agile Process
3 – Research Methodology
Aims and Objectives
Research Process Flow
Sampling and Data Collection
Primary Methods of Data Collection
Secondary Methods of Data Collection
Observation and Analysis
Vision and Mission
Case Project Team
Case Scenario Project
4 – Results
Current Situation Analysis
Current Product Usability Strengths
Current Product Usability Weaknesses
Usability in Current Process
User Requirement Gathering in Current Process
Summary / Discussion
Usability Activities in Scrum
User Research and Product vision
Persona in Product Vision
Sprint 0 as User Requirement Gathering
Usability Testing in Each Sprint
5 – Recommendation
User Requirements in Product Vision
Persona to Vision Statement
Design Use-Cases and Paper Prototype One Sprint Ahead
Use cases in sprint zero
Integrate Use-Cases in User Stories
Usability Testing on Paper-Prototype and Final Design Iteratively
Usability Testing on Initial Paper Prototype
Usability Testing on Final Design and Manage User Feedback
The Usability and Agile Integrated workflow model
6 – Evaluation
Aims and Objectives of Research
Prototype and Guerilla Testing
7 – Conclusion