diff --git a/.obsidian/plugins/text-extractor/cache/6d28d18748e652b2e2fb2d463e29b94a.json b/.obsidian/plugins/text-extractor/cache/6d28d18748e652b2e2fb2d463e29b94a.json new file mode 100644 index 0000000..ac6eeb0 --- /dev/null +++ b/.obsidian/plugins/text-extractor/cache/6d28d18748e652b2e2fb2d463e29b94a.json @@ -0,0 +1 @@ +{"path":"Attachments/Pasted image 20250107114628.png","text":"100% PE \\3 NS SM SS ë‘\\ë SS N ND Percent SSN of Effort Productive Work SS SIN AA —‘:\\Ÿ ‘ SN ‘j N \\\\\\.\\'\\' \\\\Q HD Vracsssss Ty Beginning End of of Project Project Time FIGURE 3-3 Real experience of projects that pay little attention to process. As the project environment becomes increasingly complicated, thrashing and process both increase.","libVersion":"0.3.2","langs":"deu+eng+fra"} \ No newline at end of file diff --git a/.obsidian/plugins/text-extractor/cache/951c15f6553cfe875badfea0cf17086d.json b/.obsidian/plugins/text-extractor/cache/951c15f6553cfe875badfea0cf17086d.json new file mode 100644 index 0000000..905988e --- /dev/null +++ b/.obsidian/plugins/text-extractor/cache/951c15f6553cfe875badfea0cf17086d.json @@ -0,0 +1 @@ +{"path":"Attachments/Pasted image 20250107114616.png","text":"100% T Q NN } N . NNN \\\\\\‘. \\\\ N ‘ Percent ‘ . A of Effort Productive Work N NS - A I - ” Beginni End of of Project ' Project Time FIGURE 34 Experience ofprojects that focus early attention on process. As the team gains experience with its processes andfine tunes them to the working environment, the time spent on process and thrashing both diminish.","libVersion":"0.3.2","langs":"deu+eng+fra"} \ No newline at end of file diff --git a/.obsidian/plugins/text-extractor/cache/b2a7ff15b24bf699793d78a5a1b48cf4.json b/.obsidian/plugins/text-extractor/cache/b2a7ff15b24bf699793d78a5a1b48cf4.json new file mode 100644 index 0000000..e70d5dd --- /dev/null +++ b/.obsidian/plugins/text-extractor/cache/b2a7ff15b24bf699793d78a5a1b48cf4.json @@ -0,0 +1 @@ +{"path":"Attachments/Pasted image 20250107120429.png","text":"; Cost to .‘ Correct Q â | & | \\ù% 4 Phase That a q Defect Is Created $ \\\\\\ Q Em‘&. R ‘ , _- q V\\\\\\ A Knl -‘.«\\k SEN — NN Detailed desi, SSN ol \\ N N cm NN N Requirements Architecture Detailed Construction Maintenance design Phase That a Defect Is Corrected FIGURE 3-5 Increase in defect cost as time between defect creation and defect correction increases. Effective projects practice \"phase containment\"—the detection and correction ofdefects in the same phase in which they are created.","libVersion":"0.3.2","langs":"deu+eng+fra"} \ No newline at end of file diff --git a/.obsidian/plugins/text-extractor/cache/f5cc93594f1dcc683eb92cf0ebc6a807.json b/.obsidian/plugins/text-extractor/cache/f5cc93594f1dcc683eb92cf0ebc6a807.json new file mode 100644 index 0000000..3c5d9b4 --- /dev/null +++ b/.obsidian/plugins/text-extractor/cache/f5cc93594f1dcc683eb92cf0ebc6a807.json @@ -0,0 +1 @@ +{"path":"Attachments/Pasted image 20250107121222.png","text":"100% 75% \\ size * \\ \\ä \\ NS N SS Estimate 25% \\\\ \\\\\\\\\\ Growth NS (inlines 0% N Ÿ S of source 25% \\ \\ code) * -50% -75% -100% ( | | Initial product Requirements Detailed definition development design Approved product Architecture Product definition complete FIGURE 3-6 Cone of uncertainty. Decision-making on a software project progresses from large grain to small grain. The project team can't know much about the decisions to be made in a specific phase until it Iws completed most ofthe work for the phase ttwt im- mediately precedes it.","libVersion":"0.3.2","langs":"deu+eng+fra"} \ No newline at end of file diff --git a/.obsidian/workspace.json b/.obsidian/workspace.json index 5e65fcc..20be094 100644 --- a/.obsidian/workspace.json +++ b/.obsidian/workspace.json @@ -495,6 +495,10 @@ }, "active": "c913626684654e11", "lastOpenFiles": [ + "Attachments/Pasted image 20250107121222.png", + "Attachments/Pasted image 20250107120429.png", + "Attachments/Pasted image 20250107114628.png", + "Attachments/Pasted image 20250107114616.png", "2 Personal/Lists/Business Ideas.md", "5 Media/0 Books/Software Project Survival Guide by Steve McConnell.md", "0 Journal/0 Daily/2024-12-06.md", @@ -523,15 +527,11 @@ "5 Media/0 Books/Surrounded by Idiots by Thomas Erikson.sync-conflict-20241025-131108-LIUMLEB.md", "5 Media/0 Books/The 7 Habits of Highly Effective People by Stephen Covey.md", "3 Knowledge/Personality Tests.md", - "2 Personal/Home Lab/VPS/Gitea Setup.md", "Attachments/Pasted image 20241118160705.png", "Attachments/Pasted image 20241118143053.png", "Attachments/Pasted image 20241118142001.png", "Attachments/Pasted image 20241105160637.png", "Attachments/Pasted image 20241105160145.png", - "Attachments/Pasted image 20241105155616.png", - "Attachments/Pasted image 20241105154304.png", - "Attachments/Pasted image 20241105154101.png", "Attachments/Gym-Rings-UK.pdf", "99 Work/Jobhunt/Applications", "99 Work/0 OneSec/OneSecNotes/30 Engineering Skills/Robotics/Sensors", diff --git a/5 Media/0 Books/Software Project Survival Guide by Steve McConnell.md b/5 Media/0 Books/Software Project Survival Guide by Steve McConnell.md index c1ffdda..2c7dfd4 100644 --- a/5 Media/0 Books/Software Project Survival Guide by Steve McConnell.md +++ b/5 Media/0 Books/Software Project Survival Guide by Steve McConnell.md @@ -111,6 +111,80 @@ Most projects have a score <50. ### Survival Concepts +> [!Quote] +> An investment made in process at the beginning of the project produces large returns later in the project + +Processes are important because they make the development more productive and resistant in the long term. Example processes are: +- formally write down requirements +- use a procedure to control additions and changes to the requirements +- Do reviews of all requirements, designs and source code +- Develop a written *Quality Assurance Plan*, including a *test plan*, *review plan* and a *defect tracking plan*. +- Create an *implementation plan* that defines in which order the components are developed. +- Automated source code control (e.g. git) +- Revise Cost and schedule after each milestone + +If teams do not invest in process at the beginning of the project, the amount of time spent for process and thrashing (i.e. unproductive time) will increase (see Figure 3-3). +![[Pasted image 20250107114628.png]] + +On the contrary, teams which establish processes in the beginning (overhead) will spend less and less time on thrashing and processes as the project moves on. +![[Pasted image 20250107114616.png]] + + +> [!Quote] Overhead of a cancelled Project +> If you think that attention to process is needless overhead, consider that the overhead of a canceled project is 100 percent. + + +> [!warning] Opposite Views +> - Processes limit developer's creativity +> - --> Set up an environment where creativity is still possible. +> - Developers feel best in environments where they are the most productive. +> - Research shows that in regulated environments people feel more productive. + +#### Upstream and Downstream +Upstream contains all early work of a project, such as requirements definition and architecture design. Downstream refers to later parts such as construction and system testing. +Defects cost more (50-200 times more), the earlier in the project they are inserted as illustrated in the figure below. +![[Pasted image 20250107120429.png]] +Please note that the cost grows exponentially, which multiplies the effect. + +> [!Quote] +> Successful project teams create their own opportunities to correct upstream problems by conducting thorough, careful reviews of requirements and architecture. + +Remember that just because no code is being written in the beginning that doesn't mean it is delaying the real work, but rather it is laying the groundwork for the project's success. +Erring on the side of too much process is marginally more expensive, versus erring on too little process can be way more expensive (50-200x) in the long run. This is because of the *cone of uncertainty*, which illustrates that upstream decisions affect downstream decisions, but not vice-versa. +![[Pasted image 20250107121222.png]] + + +> [!Quote] +> Early in the project you can have firm cost and schedule targets or afirmfeature set, but not both. + +> [!question] Survival Check - Survival Test +> - 👍🏼 Project leadership understands the critical role of well-defined processes and supports them. +> - 👍🏼 The project's processes are generally oriented toward detecting as many problems upstream as possible. +> - 👍🏼 Project leadership recognises that estimates made during the first half of the project are inherently imprecise and will need to be refined as the project progresses. + +### Survival Skills +Software projects are inherently complex and therefore need to be planned, controlled and made sure that the progress is visible, people are supported to do the project's work. +The risks should be tracked and constantly redeveloped. +#### Planning + +#### Risk Management + +#### Project Control + +#### Project Visibility + +#### Peopleware + +#### User Involvement + +#### Product Minimalism + +#### Focus on Shipping Software + + + + + --- ```query Software Project Survival Guide Steve McConnell diff --git a/Attachments/Pasted image 20250107114616.png b/Attachments/Pasted image 20250107114616.png new file mode 100644 index 0000000..ef8c714 Binary files /dev/null and b/Attachments/Pasted image 20250107114616.png differ diff --git a/Attachments/Pasted image 20250107114628.png b/Attachments/Pasted image 20250107114628.png new file mode 100644 index 0000000..37055dc Binary files /dev/null and b/Attachments/Pasted image 20250107114628.png differ diff --git a/Attachments/Pasted image 20250107120429.png b/Attachments/Pasted image 20250107120429.png new file mode 100644 index 0000000..9733538 Binary files /dev/null and b/Attachments/Pasted image 20250107120429.png differ diff --git a/Attachments/Pasted image 20250107121222.png b/Attachments/Pasted image 20250107121222.png new file mode 100644 index 0000000..0e9d394 Binary files /dev/null and b/Attachments/Pasted image 20250107121222.png differ