How an agile method can reduce project complexity?
كيف يمكن لمنهجية أجايل (Agile) أن تقلل من تعقيد المشروع؟
Ahmed.Alshatir *, Mabrouka Amhamed AL-SHEBANY 1
*Faculty of Information Technology, Software Engineering department /Sirte University, Sirte, Libya
1Faculty of Information Technology, computer Science department /Sirte University, Sirte, Libya
*Corresponding authors: a_amoha@su.edu.ly
DOI: https://doi.org/10.53796/hnsj65/32
Arabic Scientific Research Identifier: https://arsri.org/10000/65/32
Volume (6) Issue (5). Pages: 491 - 498
Received at: 2025-04-07 | Accepted at: 2025-04-15 | Published at: 2025-05-01
Abstract: : In order to remain competitive, numerous organizations have been compelled to evaluate conventional project management approaches due to the rapid advancements in technology. This has led to the widespread adoption of Agile project management. As per the 2017 Pulse of the Profession® report by the Project Management Institute (PMI), 71% of organizations stated that they utilize Agile methods for their projects on occasion, frequently, or consistently. Agile and project management integration offers companies the opportunity to minimize inefficiencies and enhance visibility, all while catering to the constantly evolving needs of customers. As stated in the Pulse of the Profession report, approximately 20% of projects utilized a combination of Agile methodologies and project management techniques in the previous year [1]. This article aims to explore the extent to which agile methods aid in managing project complexity. The rise in project complexity has necessitated the introduction of novel project management strategies. Within the fields of software development, numerous agile methodologies have emerged and are now widely adopted in practical settings.
Keywords: Agile Software Development, Project Management, Project complexity.
المستخلص: من أجل البقاء في بيئة تنافسية، اضطرت العديد من المؤسسات إلى إعادة تقييم أساليب إدارة المشاريع التقليدية نتيجة للتطور السريع في التكنولوجيا. وقد أدى ذلك إلى اعتماد واسع النطاق لإدارة المشاريع بأسلوب أجايل (Agile). ووفقًا لتقرير "نبض المهنة" لعام 2017 الصادر عن معهد إدارة المشاريع (PMI)، أفاد تبأن 71٪ من المؤسسات تستخدم أساليب الأجايل في مشاريعها أحيانًا أو بشكل متكرر أو دائم. إن دمج الأجايل مع إدارة المشاريع يتيح للشركات فرصة تقليل أوجه القصور وتعزيز الشفافية، مع تلبية الاحتياجات المتغيرة باستمرار للعملاء. ووفقًا لتقرير "نبض المهنة"، فإن حوالي 20٪ من المشاريع استخدمت مزيجًا من منهجيات الأجايل وتقنيات إدارة المشاريع خلال العام السابق. تهدف هذا الدراسة إلى استكشاف مدى مساهمة منهجيات الأجايل في إدارة تعقيد المشاريع. وقد أدى تزايد تعقيد المشاريع إلى ضرورة إدخال استراتيجيات جديدة لإدارة المشاريع. وفي مجالات تطوير البرمجيات، ظهرت العديد من منهجيات الأجايل وأصبحت الآن معتمدة على نطاق واسع في البيئات العملية.
الكلمات المفتاحية: تطوير برمجيات الاجايل ، إدارة المشاريع، تعقيد المشاريع.
Introduction
Recent ideas on management of projects introduce an abundance of approaches, i.e. by understanding the project as a temporary organization, where learning, diversity, temporality, complexity, uncertainty and sociability are in play (Winter and Szczepanek, 2009). The increased complexity of projects has led to the development of agile methods and to the acceptance of the need for a contemporary organization of projects that not only mechanically executes a process toward a narrow, product-oriented goal, but accepts projects as business-like and value-creating (Davenport, 2013). Agile methods are highly used in the development of software, based on a belief that a project in broad understanding continuously needs to be adjusted based on the learning acquired during the process. The use of agile methods in software development settings seems to have a greater impact on success factors than just pure efficiency (Serrador and Pinto, 2015).
Traditionally a project has been seen as a tool applied to a single assignment, focusing on meeting time and quality under the available resources. This single-track approach applies a logical and chronological way through a set of (more or less) well-defined tasks. This approach has been challenged in the general understanding on how to modernize project management, especially in the stream of research related to Rethinking Project Management (Svejvig and Andersen, 2015).
Increased complexity in projects has forced new project management initiatives. In software development several agile methods have emerged and are today highly implemented in practice. Observations of general project management practice show how it has been inspired by agile software development, but very little research addresses the issue of agile project management. In order to understand and to provide suggestions for future practice on how agility can be incorporated in general project management [2].
- AGILE SOFTWARE DEVELOPMENT
Agile project management centers on the concept of embracing change, even during the later phases of development. The primary focus of Agile methodology is to prioritize the delivery of features that hold the highest business value, while also facilitating real-time communication to effectively manage the project’s cost, time, and scope. In contrast, traditional project management places the entire burden of the project on the project manager, who is accountable for balancing various aspects such as cost, project scope, quality, personnel, risk, reporting, and adapting to changing requirements. Agile project management, on the other hand, adopts a collaborative approach by distributing project responsibilities among three distinct roles:
- product owner
He/she assumes the responsibility of establishing the objectives of the project, overseeing the project’s scope, adapting to changes in project requirements, and determining the priorities for the features of the product.
- Scrum Master
on the other hand, the Scrum Master is accountable for providing guidance to the team members, prioritizing the tasks of the project, and eliminating any obstacles that may hinder progress.
- Team member
As for the team members, they are entrusted with the majority of task assignments, meticulous daily management, ensuring quality control, and reporting on the overall progress of the team. In the realm Agile project management addresses the challenge of complexity by dividing the laborious task of identifying project requirements into smaller, more manageable components., constructing the product, and subsequently testing it, only to find that it fails to meet client expectations or contains flaws. Instead, the approach involves specifying, developing, and testing small, functional segments of the product within two-to-four-week cycles known as “sprints”[3].
- ROLE OF A PROJECT MANAGER ON AN AGILE
The role of an Agile project manager differs significantly from that of a classic project manager. In Agile, the classic project manager takes on the role of a Scrum Master. There are
several ways in which the Scrum Master or Agile project manager role varies from that of a classic project manager. in an Agile method. Below are some ways the Scrum Master or Agile project manager role differs from the classic project manager.
- Authority
In terms of authority, the traditional project manager holds a hierarchical position focused on command and control. On the other hand, the Scrum Master acts as a facilitator, promoting collaboration and teamwork.
- Managing stakeholder expectations
The responsibility of managing stakeholder expectations in Agile project management lies with the product owner The product owner assumes the role of a leader and offers guidance and direction to the team, ensuring that the right product is developed and delivered based on priority and return on investment (ROI).
- Work assignments
work assignments differ between the two roles. In a traditional project management setting, the project manager assigns and supervises the team’s work. However,In Agile methodology, the team members are entrusted with the responsibility of independently allocating and overseeing their own tasks. The Agile team is expected to be a self-organized group of skilled professionals who are accountable for the work they commit to in a sprint.
- Requirements
The responsibility for defining requirements lies with the product owner in Agile. It is their duty to
ensure that requirements are clearly defined and to offer sufficient guidance for the products and services being delivered.
- Leadership and support
In terms of leadership and support, it is the Scrum Master who takes the lead in supporting both the product owner and the Agile team. The Scrum Master assists them, facilitates creativity, and fosters empowerment within the team.
- Removing obstacles
The task of removing obstacles is transferred from
The task the project manager to the Scrum Master in an Agile environment. The Scrum Master is responsible for eliminating barriers and offering assistance to the team.
It is crucial for the Scrum Master to guide the team in embracing Scrum, while acknowledging that they do not possess any authority over the team. As conventional project managers contemplate transitioning into this role, they must be prepared to adjust their skills and embrace an Agile mindset.
- PROJECT AND REQUIREMENTS COMPLEXITY
Generally, the term ‘complexity’ refers to the intricacy that arises from the existence of numerous divergent options, resulting in a multidimensional situation. However, within the realm of business, complexity is inherently derived from uncertain circumstances, diverse approaches, and advancements in technology. Complexity at the project level can be categorized into two categories: (1) complexity of project and (2) complexity of requirements.
Fig. 1. Project Complexity Determinants
- Project Complexity
The level of complexity of a project is determined by its uniqueness, limiting factors, and degree of uncertainty. However, different organizations have different interpretations of what project complexity entails.
- Uniqueness: Uniqueness refers to the fact that every project is distinct to the organization and possesses its own set of attributes and requirements. As the organization gains experience through execution, its project management capabilities develop organically. Project uniqueness becomes evident when the organization lacks prior experience in handling similar projects. Examples of such projects include ‘green field’ ventures and those involving new technologies.
- Limiting factors: Limiting factors are another aspect of project complexity and encompass the stringent constraints imposed on the project. These factors may include parameters such as schedule and budget, which restrict the project’s execution.
- Uncertainty: The achievement of project scope is influenced by the level of uncertainty, which can be caused by various outside and inside parts. outside parts, such as government regulations, market fluctuations, and economic conditions, can significantly impact the level of uncertainty. On the other hand, inside parts, which are often overlooked, also contribute to increased volatility in project processes. These internal parts include changes in enterprise strategy that affect the project and the involvement of new project sponsors with different directions and philosophies.
It is an established fact that the success rate of a project within an organization is directly influenced by its level of complexity. The manner in which an organization foresees, comprehends, and manages the intricacies of a project plays a crucial role in determining its overall success. In cases where a project is characterized by a high level of uncertainty and various limiting factors, the potential for success is likely to be restricted accordingly. To overcome the challenges posed by complexity and unlock the organization’s full potential, it is imperative for its members to acknowledge the existence of complexity and its potential to escalate as operations expand. Moreover, the team must recognize that effectively addressing complexity can provide a competitive edge. As a result, this acts as an obstacle for potential entrants, sieving out individuals who lack the ability to navigate the inherent intricacies.
Agile methodology places a strong emphasis on adaptive planning, evolutionary development, and iterative delivery. Each project is inherently unique, presenting its own set of circumstances. These circumstances encompass various aspects, such as managing a distributed environment and addressing complex requirements. It is crucial to meticulously identify and implement the necessary measures to comprehensively comprehend and effectively manage these circumstances:
- It is imperative to recognize, accept, and understand the circumstances and limitations of a project.
- Agile methodologies should be tailored to suit these specific circumstances and constraints, particularly in the case of a distributed environment.
- Adapting the level of agility to an appropriate degree is crucial in order to effectively address these constraints.
The concept of ‘close, daily collaboration’ is characterized by the ability to recognize differences and promptly implement appropriate responses, resulting in a more efficient turnaround time. The advantages of collaboration become apparent when a team prioritizes immediate communication rather than holding onto an observation, and when they validate and verify information before sharing it with others. Additionally, the capacity to adjust to alteration is enhanced when there is a consistent adjustment to evolving circumstances. While no change is too overwhelming to handle, smaller changes are generally easier to manage. Therefore, if alterations in circumstances are identified early on and there is a regular refinement of ways, assumptions, and functionality, the process of managing change becomes more manageable.
Agile methodologies do not adhere to a rigid set of rules that must be strictly followed. Instead, the team must frequently reflect on their practices and make improvements based on specific circumstances, adapting them to both outside and inside parts. However, less regulated processes require a mature team that can exercise caution when utilizing flexibility. Otherwise, the absence of structure may lead to a state of chaos [4].
- Requirements Complexity
Requirement analysis is the process of uncovering the unknown aspects of a project. It involves understanding the business problem, identifying needs, and determining the necessary actions to address them. The complexity of requirements can be measured by two main points:
- The level of “unknowns”: At the beginning of a project, how much information is known about the problem statement and the business processes? It is crucial to assess the level of unknowns in a detailed manner, especially regarding business rules, systems, and functions.
- Volatility: What is the expected degree of changes in requirements once the project is initiated? Requirements volatility arises because continual modifications, starting from the design phase and continuing throughout implementation. Traditional project management methodologies frequently make the assumption that requirements are finalized during the design phase and will not change. However, this is not always the case, as there is always a certain degree of uncertainty and unpredictability. Requirements volatility introduces significant risks and uncertainties.
In conventional project management practices, requirements complexity is addressed by dedicating a substantial amount of time to the requirements analysis phase. The underlying belief is that investing time in analysis will reduce complexity. This approach allows for a deeper exploration of the unknowns, enabling stakeholders to make informed decisions while understanding and defining the requirements.
Fig. 2. Project Complexity Determinants
The Scrum Guide asserts that Scrum is a framework designed for developing and maintaining complex products. However, the definition of complexity is subjective and can vary depending on the author’s perspective.
Furthermore, the Scrum Guide states that no changes should be made that would jeopardize the Sprint Goal. This infers that changes are permissible as long as they do not put the intended outcome at risk. However, the term “endanger” is subjectively defined and can vary in interpretation.
The guide provides a clear distinction between ‘change’ and ‘scope’ as two separate types of change. It explains that scope can be clarified and renegotiated between the Product Owner and Development Team as more knowledge is gained. However, it emphasizes that change and scope are different in the following ways:
- Requirements volatility: Change is typically driven by requirements volatility. In this case, the scope remains unchanged, but the requirements themselves change. This means that any changes to the requirements have little to no impact on the defined scope.
- Scope change: scope change refers to the situation where additional deliverables are introduced or the final project outcome is extended to cover elements that were not initially agreed upon when the scope was defined.
It is important to note that changes in scope can introduce volatility to the requirements. While Scrum provides some degree of control over change, one of the concepts of the Agile Manifesto is to prioritize responding to change over following a rigid plan.
It is worth mentioning that no project execution methodology offers an effective solution for managing requirements uncertainty and complexity. It appears that addressing change and complexity is often left to the intuition of the project members [5].
- CAN AGILE REDUCE POROJECT COMPLEXITY?
In the context of project complexity, Agile methodologies aim to reduce complexity by promoting lightweight practices and establishing a flexible framework. These methodologies operate within broadly defined roles and emphasize iterative and incremental cycles, fostering dynamic interactions and collaboration within the team members.
The emergence of Agile as an alternative to traditional sequential waterfall approaches can be attributed to the challenges posed by addressing change and the increasing complexity related to scaling up production.
The software development sector has consistently been at the forefront of pioneering novel approaches for organizations to adopt in their operations. Due to the inherent dissimilarity and intricate nature of work in the software development realm compared to traditional factory settings, where modernistic ideologies and techniques originated, it became evident that these methods were not suitable for knowledge-intensive activities. Consequently, this realization prompted the emergence of agile software development, enabling organizations to embrace flexibility by replacing conventional theories. These organizations consistently provide value to their customers by effectively addressing complexity and delivering exactly what the customers desire, rather than solely relying on their initial understanding of the problem. Agile software development has brought about two types of benefits that are relevant to managing complexity. The first benefit is the recognition that adopting a people-centric approach is crucial in navigating complexity. By embracing the values and principles of agile, organizations can humanize their processes and interactions. Its structure of small cross functionality teams to bring diversity is also an import aspect. This engages individuals on another level bringing collaboration around problems to the forefront. The change in the way that individuals and teams think about problems is also critical.
Secondly, agile methodologies offer the organization a streamlined approach to address intricate situations, requiring swift adaptation in response to the interrelated actions of competitors, customers, legislation, and stakeholders, while harnessing novel emergent behavior. These agile tools equip the organization at various levels with inventive strategies to navigate complexity, comprehend the problem domain, and facilitate the emergence of effective solutions. Agile does this by creating the correct culture and mindset needed in knowledge-based organizations, a mindset that allows for people to self-organize around problem domains, but with the constraints needed for the outcomes to emerge and be useful for the organization Agile frameworks provide a platform for learning in complex environments. Tools and thinking such as small experiments allow for new and unique outcomes to be discovered, giving the organization the ability to change direction to take competitive advantage of these learnings. Smaller iterative learning cycles enable individuals and teams to attain knowledge without the need for full initial understanding in problem domains that are uncertain. Achieving understanding in small cycles increases the efficiency and effectiveness of individuals. Iterations reduced the complexity of the work by limiting exposure to the work that is being done. [6].
- CONCLUSION
Project complexity is an unavoidable aspect that must be recognized in order to improve the team’s capacity to adapt and respond to change while maintaining their focus on the ultimate goal. Agile practices and methodologies advocate for the ability to navigate and control change by comprehending the inherent complexity within projects. Although managing the complexity of requirements in an Agile environment may be somewhat ambiguous and subject to interpretation, the principles of Agile serve as valuable guidelines for projects, empowering them to effectively deal with complexity. To recap, there are four principles to take in consideration:
- Iterative and incremental
- Collaboration and adaptability
- Embracing and respond to change
- Continuous improvement
In essence, Agile methodology suggests addressing complexity by dividing the requirements into manageable portions that can be accomplished without encountering limitations. Additionally, it advocates for collaboration to foster team unity, knowledge exchange, and adaptability to changes within the project setting. This approach helps mitigate the effects of complexity and enables continuous learning and adjustment throughout the project’s progression. Therefore, can Agile effectively diminish complexity? Although Agile is relatively straightforward to understand but challenging to fully grasp, the answer is affirmative if it is thoroughly mastered and implemented with the necessary level of maturity.
- REFERENCES
- VILLANOVA UNIVERSITY, “The Use of Agile Project Management is Increasing”villanovau.com. https://www.villanovau.com/articles/project-management/the-use-of-agile-project-management-is-increasing/ (accessed Nov. 3, 2023).
- Heeager, Svejvig, and Schlichter (2016), “How agile methods inspire project management-The Half Double Initiative.
- VILLANOVA UNIVERSITY, “The Use of Agile Project Management is Increasing”villanovau.com. https://www.villanovau.com/articles/project-management/the-use-of-agile-project-management-is-increasing/ (accessed Nov. 3, 2023).
- ProjectSmart,”CanAgilereduceComplexity?” https://www.projectsmart.co.uk/. https://www.projectsmart.co.uk/agile-project-management/can-agile-reduce-complexity.php (accessed Dec.17, 2023).
- ProjectSmart,”CanAgilereduceComplexity?” https://www.projectsmart.co.uk/. https://www.projectsmart.co.uk/agile-project-management/can-agile-reduce-complexity.php (accessed Dec.17, 2023).
- Wayne Austen Pringle-Wood, ” Agile Software Development as a Response to Complexity”, Stellenbosch University, April 2014.