Lean development Flashcards

1
Q

7 key principles of lean software development

A

1) Eliminate Waste 2. Build Quality In 3. Create Knowledge 4. Defer Commitment 5. Deliver Fast 6. Respect People 7. Optimise The Whole

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

Lean over other

A

k

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

22 lean tools

A

1

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

See the whole

A

1) All the working parts
2) Everything integrating
3) Focus on overall system performance
4) Important in contracting, not individual needs drive the focus

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

Eliminate waste

A

1) anything does not add value
2) Anything not needed immediately
3) Handing development one group to another

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

Amplify learning

A

1) Communicate early and often
2) Decision based on empirical finding not on assumptions
3) Repeat throughout the process
4) Continually improve
5) Expect and embrace mistake

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

Decisions as late possible

A

1) Avoid locking in decision (design should be flexible)

2) Build a capacity for change in the system

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

Deliver as soon as possible

A

1) Quick feedback

2) Discovery cycle is critical (shorter the cycle, more can be learned)

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

Empowering the team

A

1) Developers can let others know when works needs to be done
2) Not possible for central authority to direct
3) Pull mechanism, self organizing, do whatever it takes to resolve the challenges

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

Build integrity into the system

A

1) Whatever delivered is what wanted
2) System maintain usefulness
3) Adaptable

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

Tools to eliminate waste -Seeing waste

A

1) partially done work
2) Extra processes - someone waiting for the output from the process
3) No extra features
4) Task switching
5) Waiting (not able to realize value)
6) Motion (co location), not only people
7) Defects (find as soon as it occurs, so test immediately)

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

Tools to eliminate waste -Value stream mapping

A

1) Flow of work (all process steps) -shows waiting and unnecessary steps

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

Principle 2-Amplifying

A

1) Feedback
2) Immediate customer not a future customer
3) Increase frequency loop in problem area
4) Iteration
5) Synchronization (feature based development)
6) Set based development(develop multi options, communicate constraints, letting solutions emerge)

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

Principle - 3, Decide as late

A

1) Options thinking
2) last possible moment
3) Making decisions (breadth first, depth first)

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

Option thinking

A

1) Maximize reward until more information available
2) Flexibility to respond to change
3) Fact based decision

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

last possible moment

A

1) Concurrent development

17
Q

Making decisions

A

1) breadth first - how details most likely emerge, late commitment, business expected to evolve
2) depth first - early commitment, focus on particular area

18
Q

Principle 4 - Deliver as fast as possible

A

1) pull system
2) Queuing theory tool
3) Cost of delay

19
Q

Pull system development

A

1) Kanban is most often used tool
2) display task progress
3) increased team motivation and cross functionality

20
Q

Queuing theory tool

A

1) remove project bottlenecks
2) minimizes task wait time inside a process
3) goal is minimize Cycle time

21
Q

Cost of delay

A

1) Minimize cost of delay
2) Understand relationship between cost and time
3) Only delay as long as profit is not affected

22
Q

Principle 5 - Empower the team

A

1) Self Determination
2) Motivation
3) Leadership
4) Expertise

23
Q

Self determination tool

A

1) Developers chose how and when to do work
2) Team leaders enforces standards, coordinate work
3) Overall team is responsible

24
Q

Motivation

A

1) Encourage, recognize and reward creativity and initiative

2) Building blocks: belonging, safety, competence, progress

25
Q

Leadership

A

1) Coach and facilitator
2) how to use tools and to work as whole
3) Facilitate activities so team can focus

26
Q

Expertise

A

1) Each member as different level of expertise
2) Encourage to learn for cross functionality
3) Share expertise by knowledge transfer

27
Q

Principle 6 Build integrity in

A

1) Perceived integrity
2) Conceptual integrity
3) Refactoring
4) Testing

28
Q

Perceived integrity

A

1) perceived by user of the system
2) affected by deliver, access, intuitiveness, cost
3) cost

29
Q

Conceptual integrity

A

1) Central concept work together as unit
2) prerequiste for perceived integrity
3) emerges as system matures and evolves
4) helps to illustrate system purpose

30
Q

Refactoring

A

1) For continuous improvement
2) refactor and realign for conceptual integrity
3) key method for avoiding waste

31
Q

Principle 7 see the whole tools

A

1) Measurements

2) Contracts

32
Q

Measurements

A

1) Information measurement (not performance measurement)
2) Don’t attribute defects to the developer
3) collaborate as team to identify defects (information measurement)

33
Q

Contracts

A

1) Time and material
2) Multistage (master contract, work orders)
3) Target cost (solution to meet target cost, limit cost)
4) Shared benefit contract (mutual benefits)

34
Q

In times of trouble

A

1) find and fix its root cause
2) identify biggest concern and focus on removing it
3) move up one level and improve

35
Q

lean vs scrum

A

1) ability using specific set of engineering
2) cost is important
3) when driven at process level