Agile Software Development: Agile principles Flashcards

1
Q

4 core values

A

Individuals and interactions over processes and tools: Agile places more importance and emphasis on people and their interactions over processes and even tools.

Working software over comprehensive documentation: Documentation requires a time and resource commitment that might be wasteful.

Customer collaboration over contract negotiation: Agile promotes a collaborative outlook when product owners work with their customers in reaching an agreement on the details of the product delivery.

Responding to changes over following a plan: Agile embraces the change that makes business sense.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Ambiguity

A

Ambiguity: Ambiguity refers to a lack of clarity, such as not having a clear understanding of the genuine needs of the customer and end-users

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Complexity

A

Complexity : Complexity exists when there are many interconnected parts and variables that influence each other

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Muda

A

Muda : Lean principles refer to the Japanese term Muda as waste; Agile teams focus on the removal of non-value adding tasks that are seen as Muda

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Product Owner

A

Product Owner: A business proxy or representative of the business users who is the Voice of the Customer (VOC)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

ROI

A

Return on Investment (ROI): Return on investment (ROI) is calculated as the ratio between net profit and cost of investment over a defined period of time

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Uncertainty

A

Uncertainty: The extent to which an organization can confidently predict or forecast the future; more uncertainty makes it harder to predict

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Voice of the Customer

A

Voice of the Customer: A term used to articulate the steps to capture customer’s needs

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Volatility

A

Volatility : Volatility is when there are unexpected or unstable possibilities that may influence the work being done

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

VUCA

A

VUCA: Volatility, Uncertainty, Complexity, Ambiguity

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

WIP

A

WIP (Work in Progress): The work that has been started but not yet completed

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What delivers optimal business value in Agile teams?

A

Systems Thinking + Growth Mindset

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is business agillity

A

Adapt quickly to market changes
Respond rapidly and flexibly to customer demands that make business sense
Adapt and lead change in a productive and cost-effective manner with no compromise to quality

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Agile Mindset

A

The set of attitudes supporting an agile working environment

Respect
Collaboration
Continuous Improvement
Iterative Learning Cycles
Mastery and Ownership
Focus on Delivering Value
Adaptability to Change
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Being Agile

A

When an Agile team lives & breathes Agile principles and values through Agile practices consistently every day

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Doing Agile

A

When an Agile team adopting the practices without committing to or exhibiting Agile principles and values

17
Q

12 Core Principles

A

Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. The goal of product development is the development of successful products.

Welcome changing requirements, even late in development. Agile processes harness change for the customer’s competitive advantage. Due to the dynamic competitive landscape, requirements can and will change throughout product development.

Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter time scale. Frequent and iterative delivery of working product provides the business with practical feedback.

Business people and developers must work together daily throughout the project. The Product Owner and the Agile Team adopt practices that ensure inclusive and joint practices.

Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done. Agile leaders build Agile teams with skilled resources who are willing to work together collaboratively with a growth mindset.

The most efficient and effective method of conveying information to and within a development team is face-to-face conversation. For a product development team to succeed its members must communicate and collaborate effectively.

Working software is the primary measure of progress. The primary measure of product development should be the delivery of working product increments which meet the evolving needs of the business.

Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely. A highly skilled team simply just cannot be expected to successfully develop a product by compelling people to work overtime for extended periods.

Continuous attention to technical excellence and good design enhances agility. Built-in quality practices have enormous benefits. It allows for easier maintenance and scalability of the product.

Simplicity - the art of maximizing the amount of work not done - is essential. With the guidance of the Product Owner, Agile Teams focus on high value activities, which allows them to focus on the high business value needs.

The best architectures, requirements, and designs emerge from self-organizing teams. This is a critical principle of the agile world to ensure that emerging and effective architectures, requirements, and designs are built into the product development life cycle to maximize technical excellence.

At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly. Finding concrete opportunities for improvement is a continual effort.

18
Q

Agile vs Waterfall

A

Agile fixes time and resources whereas Waterfall fixes scope.

Product lifecycle: Iterative vs Distinct phases

Design process: Incremental vs Sequential

Change: Change is embraced vs Change is challenge

Mindset/Focus: Customer needs vs Completion of project

Collaboration: significant collaboration VS limited Collaboration

Requirements: Prepared incrementally VS Prepared at start of project

Organization Self-directed team VS lead by project manager

19
Q

Conditions where Agile may not be helpful

A

Lack of agreement in terms of requirements and process

No vision and no clear roadmap

Near certainty on requirements and process upfront

20
Q

Conditions where Agile works Best

A

An environment of complexity and some uncertainty where an adaptive approach is needed

With complicated requirements that need iterative cycles to understand the needs of end-users

21
Q

Incremental Product Delivery

A

Incremental Product Delivery: An approach that utilizes a given number of steps, which go from start to finish following a linear path of progression

22
Q

Itarative Product Delivery

A

Iterative Product Delivery: An approach where product development is broken into sequences of time-boxed, repeated cycles called iterations

23
Q

Sequential Product Delivery

A

Sequential Product Delivery: A process where a defined sequence of steps must be followed as in the Waterfall approach

24
Q

Waterfall Methodology

A

Waterfall Methodology: A methodology of product development which starts by breaking down project tasks into linear sequential phases or stages where each subsequent stage depends on the successful delivery of the previous ones.

25
Q

What are common misconceptions about Agile?

A

Scheduling Agile ceremonies makes a team Agile - Holding ceremonies for the sake of holding ceremonies does not deliver benefits. Ceremonies must adhere to core principles of Agile.

The Facilitator role is just like a traditional Project Manager - The Facilitator role is different from the Project Manager role. A Facilitator should be a Servant Leader who assists with whatever the team needs to forward.

Large teams are okay - Agile recommends small cross-functional teams that allows the team to be nimble and powerful.

The product backlog can be managed like a traditional requirements document - The backlog should not be a process-driven document, It should focus on customer value and strategic objectives.

Documentation and audit trails for compliance are not important in Agile - Agile does not mean no documentation – it just removes low value documents and documents what is valuable to maintain and sustain the product.