Project Smart ~ Exploring trends and developments in project management today

Calendar icon
Adobe PDF icon

Can Agile Reduce Complexity?

~ By Adam Alami

Agile methodologies promote lightweight practices to establish a flexible framework that operates within broadly defined roles in order to achieve the desired outcome. Iterative and incremental cycles, comprising dynamic interactions, evolve to become a highly collaborative and productive team.

The advent of Agile as an alternative to the conventional sequential waterfall approach finds its genesis in response to the challenges of managing 'change' and is associated with the 'complexity' resultant to the surge in scale of production.

Project Complexity Definition
Figure 1: Project Complexity Definition

1. What Is the Underlying Complexity in a Project?

In general, 'complexity' implies intricacy due to the availability of multiple divergent options, leading to a multidimensional scenario. However, business complexity inherently arises because of uncertain conditions, varied methods and technological advancements. Project level complexity has two dimensions: (1) project complexity and (2) requirements complexity.

1.1 Project complexity

Uniqueness, limiting factors and degree of uncertainty construct the level of complexity of a given project. However, different organisations assign different meanings to the concept of project complexity.

Uniqueness: Every project is unparalleled to the organisation and has unique attributes and requirements. The organisation's project execution maturity grows organically as it increasingly learns through experience. Project uniqueness prevails when the organisation has no prior experience in running similar projects. For example, 'green field' venture, new technology, etc.

Limiting factors: Project complexity also relates to stringent constraints known as 'limiting factors'. These factors could be parameters imposed on the project (i.e., schedule, budget, etc.)

Uncertainty: The overall level of uncertainty in relation to the approach drives delivery to achieve the scope. Uncertainty can be driven by external or internal factors. External factors vary, but the most common are government regulation, market change and economic climate. Internal factors, although sometimes not recognised as factors, are real and contribute to enhanced levels of volatility in processes. Some examples are changes in enterprise strategy that impact the project or new project sponsors that pursue different directions and have different philosophies.

It is a fact that project complexity determines the rate of success in any particular organisation. The way in which an organisation anticipates, understands and navigates the complexity of a project determines its rate of success. Wherein an organisational project has a high degree of uncertainty and limiting factors, the rate of success of that project is likely to be constrained to that extent.

In order to eliminate the concept of complexity and enable the organisation to realise its full potential, its members need to comprehend that complexity exists and can increase by scaling up operations. Nonetheless, the team needs to know that effectively dealing with complexity delivers a competitive advantage. This being a barrier to entry eliminates those who are unable to cope with the inherent complexity.

1.2 Requirements complexity

Requirement analysis is the journey to discover the 'unknowns'. It is an understanding of the business problem, needs and what it takes to address them. Requirements complexity is defined by two key factors:

The level of "unknowns": At the start of the project, how much is 'known' about the problem statement? How much is known about the business processes? The level of 'unknown' must be assessed at a very granular level, particularly pertaining to business rules, systems, functions, etc.

Volatility: What is the expected level of requirements volatility once the project is launched? 'Volatility' in requirements emerges due to frequent changes, starting from the design phase all the way through implementation. Project management methodologies often assume that, when requirements move onto the design phase, they stand 'complete' and are not subject to change. However, that is not always the case as there is always some level of uncertainty and unpredictability. Requirements volatility leads to significant risk and its consequent uncertainty.

Project Complexity Determinants
Figure 2: Project Complexity Determinants

2. Can Agile Reduce Complexity?

2.1 Requirements complexity

In the traditional project management practices, 'requirements complexity' is managed by investing a significant amount of time at the 'requirements analysis' phase. This is based on the assumption that the time invested in analysis will reduce complexity. This provides more time to unravel the 'unknowns', permitting the stakeholders to make an informed decision while the requirements are being understood and defined.

The Scrum Guide claims, Scrum is a framework for developing and sustaining complex products. To be fair to the Scrum Guide, complexity is subjectively defined. In this statement, we don't know what 'complexity' means to the author.

The Scrum Guide also states, No changes are made that would endanger the Sprint Goal. This statement implies 'changes' are allowed as long as they don't 'endanger' the intended outcome. However, it leaves 'endanger' subjectively defined. The guide further distinguishes 'change' and 'scope' as two distinct types of change when it states, Scope may be clarified and re-negotiated between the Product Owner and Development Team as more is learned. However, they are two different things:

  1. Requirements volatility: Change tends to be induced by requirements volatility. Herein scope remains frozen, but the requirements change. It implies the change on the requirement has little or no impact on the defined scope.
  2. Scope change: Herein the scope change, 'I want more'. The business introduces additional deliverables or extends the final project outcome to cover elements not agreed upon initially, when the scope was defined.

However, change in the scope can bring volatility to the requirements. Scrum has some level of control over 'change', whereas one of the Manifesto principles is 'responding to change over following a plan'.

No project execution methodology proposes an effective method of managing requirements uncertainty and complexity. It seems that managing change and complexity is left open to the project team's intuition.

2.2 Project complexity

Agile emphasises adaptive planning, evolutionary development and delivery in a cyclic approach.

Every project tends to come with a unique set of circumstances. Project circumstances entail the handling of a distributed environment and complex requirements. The following need to be carefully identified and implemented to effectively understand and manage the circumstances:

  1. A realisation, acknowledgement and comprehension of project circumstances and constraints are necessary
  2. Agile must be aligned to these circumstances and constraints (i.e., distributed environment)
  3. Adjustment to the agility level at an appropriate degree is necessary to meet the constraints

'Close, daily collaboration' defines the ability to identify deltas and implement quick responses, which translates into faster turnaround time. The benefits of collaboration are evident when a team believes in instant communication rather than hanging on to an observation, in validating and verifying before sharing it with others.

Further, the ability to adapt to change is easier when there is 'regular adaptation to changing circumstances'. No change is too big to handle, but smaller advents of change are easier to handle. Thus, if the changes in circumstances are identified early and there is regular correction in methods, assumptions and functionality, it becomes easier to manage change.

Agile methodologies are not built around a set of rules that must be followed. Instead, the team has to reflect frequently and improve its practices according to specific circumstances, adjusting them to external and internal factors. However, less regulated processes need a mature team to use the flexibility with caution. Otherwise, things may start to become chaotic.

3. Conclusion

Project complexity is inevitable and should be acknowledged to enhance the team's ability to respond and adapt to change while staying focused on the end objective. Agile practices and methodology promote the capability to drive and manage change through an understanding of the inherent complexity in projects. Even though managing requirements complexity in Agile is a little blurry and left to interpretation, the Agile principles are valuable guides for projects that enable them to cope with complexity. As a quick refresh, here are the four principles:

  1. Iterative and incremental
  2. Collaboration and adaptability
  3. Welcome and respond to change
  4. Continuous improvement

Fundamentally, Agile recommends dealing with complexity by segmenting the requirements into manageable scope that can be achieved without triggering constraints. It also promotes collaboration to create team spirit, knowledge sharing and 'adaptability to change' in the project environment, thus diluting impact and facilitating learning to adjust as the project progresses. So does Agile reduce complexity? While Agile is easy to comprehend but difficult to master, the answer is 'yes' if it is mastered and if there is the required maturity to implement and run the process.


About the Author

Adam Alami is a seasoned, versatile IT consultant with over 18 years of experience revolving around major business transformation projects. He has a wealth of cross-industry experience with Tier 1 businesses in major projects in the areas of enterprise transformation, integration, migration and systems modernisation.

Adam is passionate about research. His research interests are IT offshoring, global project management, banking technology, business analysis, information technology and culture, enterprise innovation, and business solutions. To find out more, contact Adam by email or visit his website Adam Alami


Comments

Be the first to comment on this article.

Add a comment



(never displayed)



 
2000
Is it true or false that twenty is a number?
Notify me of new comments via email.
Remember my form inputs on this computer.

Agile: The Good, The Bad and The Ugly

An angel, devil and businessman

Good implementations of agile are a result of the business and IT working together to implement a methodology that meets the needs of the organisation.

CMMI and Agile: Opposites Attract

Magnet symbol

The myths surrounding the compatibility of CMMI and Agile have recently been debunked by SEI. Learn how these seemingly opposing strategies can be paired.

Picking a Project Management Methodology

PDCA methodology infographic

Both agile and waterfall can be powerful approaches to software development. How do you find the right fit for your project?

How to Introduce Agile Project Management to Your Organisation

Businessman hurdling on a running track

Introducing Agile concepts to a business environment can be a political nightmare. These five steps will ensure your migration is as smooth as possible.

PROJECT SMART is the project management resource that helps managers at all levels improve their performance. We provide an important knowledge base for those involved in managing projects of all kinds. With weekly exclusive updates, we keep you in touch with the latest project management thinking.

WE ARE CONNECTED ~ Follow us on social media to get regular updates and opinion on what's happening in the world of project management.


Latest Comments

Jacob Gubler commented on…
Better Coaching Using the GROW Model
- Thu 24 October 4:50pm

malyn manceras commented on…
Better Coaching Using the GROW Model
- Fri 18 October 5:25am

Martha Hayes commented on…
Better Coaching Using the GROW Model
- Thu 17 October 6:50pm

Latest tweets

General Project Management • Re: Automatic resource allocation depending on tasks - help! https://t.co/GyLi8qPMob about 2 days ago

General Project Management • Project Management Documentation: RAID!! https://t.co/Ww0u4rdQdj about 9 days ago

General Project Management • Re: Automatic resource allocation depending on tasks - help! https://t.co/Y80spWTlz4 about 9 days ago