Download as pdf or txt
Download as pdf or txt
You are on page 1of 2

Topic: Requirement Engineering Challenges in Agile Software Development

Objective: Identify RE challenges in small to large agile projects, propose improvements, and suggest future research directions.
Paper Link: https://doi.org/10.1155/2021/6696695
Here are the key points I found:
● Agile Software Development is popular due to its benefits for small ● Propose solutions to improve the agile RE process:
projects, but requirement engineering (RE) can be challenging. Iterative Planning and Feedback
● Traditional RE focuses on upfront requirements gathering, which isn't ● Implement iterative planning cycles to manage evolving requirements.
ideal for agile iterative approach. ● Gather continuous feedback to refine and prioritize requirements effectively.
● Agile RE practices involve continuous requirement gathering and Enhanced Communication
● Foster open communication channels between stakeholders.
refinement throughout the development cycle.
● Utilize collaborative tools and regular meetings to ensure clarity and alignment.
● Challenges with agile RE in both small-scale and large-scale
Balanced Approach
projects: ● Use agile techniques like user stories and prototypes to balance flexibility with
● Common Challenges: clarity.
○ Incomplete or evolving requirements ● Define clear acceptance criteria to maintain focus and direction.
○ Communication gaps between stakeholders Active Stakeholder Involvement
○ Balancing flexibility and clarity ● Engage stakeholders throughout the development process.
○ Ensuring continuous stakeholder involvement ● Conduct regular demos, reviews, and feedback sessions to validate progress.
● Large-Scale Agile Development: Scaling and Coordination
○ Increased complexity with scaling ● Implement scaling frameworks like SAFe or LeSS for large-scale projects.
○ Coordination across multiple teams ● Foster cross-team collaboration and visibility through integrated tools and
○ Maintaining consistency in requirements regular sync-ups.
● Limitations of agile development and future research directions.
Topic: Agile Software Development: Methodologies and Trends
Objective:
● To comprehensively review agile software development methodologies and trends
● To analyze the principles, methodologies, and their application in modern contexts (cloud computing, big data, coordination)
Paper Link: https://doi.org/10.3991/ijim.v14i11.13269
Challenges of Traditional Methods: Agile in Modern Tech:
● Waterfall Model (Example): Linear, inflexible phases (design -> development -> testing ● Cloud Computing: Enables rapid provisioning of resources, facilitating agile
-> deployment) lead to slow adaptation to changing requirements. development cycles.
● Limited Stakeholder Involvement: Customers have little say during development, leading ● Big Data: Agile principles help manage complex data pipelines and adapt to
to potential dissatisfaction with final product. evolving data requirements.
Agile as a Solution: Coordination is Key:
● Lightweight Approach: Focuses on delivering working software in short iterations, ● Communication: Open and transparent communication between team members and
allowing for course correction as needed. stakeholders is crucial.
● Agile Manifesto: Core principles prioritize individuals and interactions, working software, ● Teamwork: Collaborative environment fosters knowledge sharing and
customer collaboration, and responding to change. problem-solving.
Agile Principles: ● Self-Organization: Teams are empowered to make decisions and manage their
● Continuous Delivery: Frequent releases of working features to get feedback early and workload effectively.
often. Benefits of Agile:
● Iterative Development: Break down project into smaller chunks (iterations) with defined ● Faster Response Time: Adapt to changing needs quickly due to iterative approach.
goals and deliverables. ● Improved Quality: Frequent testing and feedback loops lead to higher quality
● Adaptive Planning: Plans are flexible and adjusted as requirements evolve throughout the software.
project. ● Higher Customer Satisfaction: Close collaboration ensures the final product meets
Popular Agile Methodologies: customer expectations.
● Scrum: Focuses on short work cycles (sprints) with a set of defined tasks. Roles include Choosing the Right Methodology:
Product Owner (represents stakeholders), Scrum Master (facilitates the process), and ● Project Needs: Consider project size, complexity, and desired level of customer
Development Team (delivers the work). involvement.
● Kanban: Visualizes workflow using a board with tasks represented by cards. Focuses on ● Team Dynamics: Choose a methodology that complements team skill sets and
continuous flow of work and limiting work in progress. working style.
● Extreme Programming (XP): Emphasizes close collaboration between developers and ● Product Sensitivity: Highly regulated products might require more structure, while
customers. Practices include pair programming, test-driven development, and continuous agile can be more flexible for others.
integration.

You might also like