vault backup: 2025-01-15 11:18:04

This commit is contained in:
2025-01-15 11:18:04 +01:00
parent 206c5b83a7
commit 704100e49b
4 changed files with 27 additions and 0 deletions

View File

@@ -0,0 +1 @@
{"path":"Attachments/Pasted image 20250115111654.png","text":"Complex Complicated Disorder Not Relevant to Software Figure 3-2 The relationship between Cynefin 5 domains and software challenges.","libVersion":"0.3.2","langs":"deu+eng+fra"}

View File

@@ -633,6 +633,7 @@
}, },
"active": "d0f5cd8f5ab689e9", "active": "d0f5cd8f5ab689e9",
"lastOpenFiles": [ "lastOpenFiles": [
"Attachments/Pasted image 20250115111654.png",
"Temporary/Agile Implementation Plan.md", "Temporary/Agile Implementation Plan.md",
"5 Media/0 Books/More Effective Agile by Steve McConnell.md", "5 Media/0 Books/More Effective Agile by Steve McConnell.md",
"Dashboard Canvas.canvas", "Dashboard Canvas.canvas",

View File

@@ -47,6 +47,8 @@ status: not_started
- Who is product owner? - Who is product owner?
- What roles do we want? - What roles do we want?
---
### What's Really Different About Agile? ### What's Really Different About Agile?
Main Benefits of Agile vs Sequential: Main Benefits of Agile vs Sequential:
- Short release cycles allow for more timely and less expensive correction of defects and faster feedback loops, meaning you can learn and adapt faster. - Short release cycles allow for more timely and less expensive correction of defects and faster feedback loops, meaning you can learn and adapt faster.
@@ -57,6 +59,29 @@ Main Benefits of Agile vs Sequential:
- Frequent, structured collaboration: daily scrum, sprint planning, sprint retrospective - Frequent, structured collaboration: daily scrum, sprint planning, sprint retrospective
- focus on empirical, responsive improvement model allows the team to learn and grow fast. - focus on empirical, responsive improvement model allows the team to learn and grow fast.
### Responding to the Challenges of Complexity and Uncertainty
#### Cynefin
Cynefin means *habitat* or *neighbourhood* in Welsh and they are considered to be clusters of meaning.
5 Domains: Complex, Complicated, Chaotic, Obvious, Disorder
![[Pasted image 20250115111654.png]]
In the **Obvious domain**, problems are well understood and clear. Example problems are taking an order at a restaurant, filling a car with gasoline, etc. The approach to solving them is *sense, categorize, respond*. There are only miniature problems like detailed if statements with live within this domain in software development, all other problems are not in this domain, which is why we can safely ignore it.
In the **Complicated Domain** you know the general shape of the problem, what question to ask and how to obtain answers. Multiple correct answers exist and you need to find the relationship between cause and effect. This is often hard, which makes this domain the domain of experts. The approach to solving problems is *sense, analyze, respond*, note the analysis instead of categorizing in the second step. Example problems: prepare a gourmet meal, database query for certain results, prioritize user requirements for version 4.1 of a mature system, etc. A lot of software development falls within this domain, and a sequential linear approach can work.
In the **Complex Domain** the relationship between cause and effect is not immediately clear, even to experts. You don't know all the questions to ask - finding the right questions is part of the challenge. Experimentation is needed to progress, some amount of failure is part of the process and decisions are often made on the basis of incomplete data. The approach to those problems is *probe, sense, respond*, meaning you can't analyze your way out of problems, but you need to probe and experiment with different solutions to start. Examples are buying a gift for someone who is difficult to shop for, meaning you know you most likely will need to exchange it later; Fixing a bug, which is not found during debugging, but only in production systems; creating software for changing hardware that is evolving. Many software development problems fall into this domain and this is where agile excells.
In the **Chaotic Domain** there is no discoverable relationship between cause and effect even with extended probing, because it is in constant turbulence. This domain also includes a time pressure element, which other domains lack. The approach to problems in this domain are decisive, action-oriented in order to impose order onto the chaos: *act, sense, respond*. Examples of such problems are: provide natural disaster help, while it is still happening; stopping a food fight in a highschool cafeteria; defining a feature set in a highly political environment with powerful stakeholders; fixing a bug in production by reversing the version, because no probing nor analysis has found the bug. The sizes of the problems are mostly smaller than project size for typical software projects.
In the **Disorder Domain** you lack clarity which domain applies to your problem. The approach here is to decompose the problem into subelements and assess the domains of each subelement. Remember that each project might have problems in various domains.
### More effective Agile beginnings: Scrum ### More effective Agile beginnings: Scrum
The main common failure is not to use SCRUM in its entirety, but only implement certain parts. Scrum is already broken down to the minimum processes, everything you take away in addition will break the system (might not apply to power scrum users, but certainly to beginners). The main common failure is not to use SCRUM in its entirety, but only implement certain parts. Scrum is already broken down to the minimum processes, everything you take away in addition will break the system (might not apply to power scrum users, but certainly to beginners).

Binary file not shown.

After

Width:  |  Height:  |  Size: 78 KiB