From 61b60125821a6270c8fea56836463fb69857b447 Mon Sep 17 00:00:00 2001 From: Rob Moffat Date: Thu, 14 Nov 2024 09:39:03 +0000 Subject: [PATCH] Added market risk --- dictionary.txt | 1 + .../Communication-And-Collaboration/Demo.md | 2 + .../Documentation.md | 2 - .../Communication-And-Collaboration/Review.md | 2 - .../Development-And-Coding/Standardisation.md | 6 +- .../External-Relations/Outsourcing.md | 2 + .../Planning-And-Management/Design.md | 5 + .../Planning-And-Management/Prioritising.md | 2 + .../Stakeholder-Management.md | 2 +- .../Conceptual-Integrity-Risk.md | 26 - docs/risks/Feature-Risks/Feature-Fit-Risk.md | 18 +- docs/risks/Feature-Risks/Feature-Risk.md | 3 +- .../Feature-Risks/Implementation-Risk.md | 42 +- docs/risks/Feature-Risks/Market-Risk.md | 41 +- numbers/Practices.numbers | Bin 324001 -> 323910 bytes .../risks/posters/implementation-risk.adl | 24 + .../generated/risks/posters/market-risk.adl | 29 + .../risks/posters/implementation-risk.svg | 1914 ++++++++++++++++ .../generated/risks/posters/market-risk.svg | 1924 +++++++++++++++++ 19 files changed, 4003 insertions(+), 42 deletions(-) delete mode 100644 docs/risks/Feature-Risks/Conceptual-Integrity-Risk.md create mode 100644 src/images/generated/risks/posters/implementation-risk.adl create mode 100644 src/images/generated/risks/posters/market-risk.adl create mode 100644 static/img/generated/risks/posters/implementation-risk.svg create mode 100644 static/img/generated/risks/posters/market-risk.svg diff --git a/dictionary.txt b/dictionary.txt index 8cea352ec..8c0db8f6f 100644 --- a/dictionary.txt +++ b/dictionary.txt @@ -352,3 +352,4 @@ wrongdoing demystify dysfunctional outlier +ousted diff --git a/docs/practices/Communication-And-Collaboration/Demo.md b/docs/practices/Communication-And-Collaboration/Demo.md index 3cf1359fe..ab2a09597 100644 --- a/docs/practices/Communication-And-Collaboration/Demo.md +++ b/docs/practices/Communication-And-Collaboration/Demo.md @@ -21,6 +21,8 @@ practice: reason: "Facilitates clear communication of the product's features and benefits to stakeholders." - tag: Learning Curve Risk reason: "Prototypes are a way of learning about a particular solution to a problem." + - tag: Implementation Risk + reason: "Demonstrations often highlight issues in implementations" attendant: - tag: Schedule Risk reason: "Demos can introduce delays if not planned and executed properly." diff --git a/docs/practices/Communication-And-Collaboration/Documentation.md b/docs/practices/Communication-And-Collaboration/Documentation.md index 953f09980..86b4a776c 100644 --- a/docs/practices/Communication-And-Collaboration/Documentation.md +++ b/docs/practices/Communication-And-Collaboration/Documentation.md @@ -24,8 +24,6 @@ practice: reason: "Creating and maintaining documentation can be time-consuming." - tag: Complexity Risk reason: "Extensive documentation can sometimes add to complexity rather than simplifying it." - - tag: Implementation Risk - reason: "Poorly documentation can lead to implementation issues in development." related: - ../Planning-and-Management/Requirements-Capture - ../Development-and-Coding/Code-Reviews diff --git a/docs/practices/Communication-And-Collaboration/Review.md b/docs/practices/Communication-And-Collaboration/Review.md index f39573aee..8a3758d75 100644 --- a/docs/practices/Communication-And-Collaboration/Review.md +++ b/docs/practices/Communication-And-Collaboration/Review.md @@ -29,8 +29,6 @@ practice: reason: "Reviews can introduce delays in the project timeline." - tag: Coordination Risk reason: "Requires effective coordination among team members." - - tag: Implementation Risk - reason: "Can lead to conflicts over quality and implementation details." related: - ../Deployment-And-Operations/Monitoring - Retrospective diff --git a/docs/practices/Development-And-Coding/Standardisation.md b/docs/practices/Development-And-Coding/Standardisation.md index bc0575815..e71648fce 100644 --- a/docs/practices/Development-And-Coding/Standardisation.md +++ b/docs/practices/Development-And-Coding/Standardisation.md @@ -16,7 +16,7 @@ practice: - "Re-Use" mitigates: - tag: Feature Fit Risk - reason: "Ensures that the features conform to predefined standards, reducing variability." + reason: "Ensures that the features conform to predefined standards, reducing variability and potentially widening accessibility." - tag: Operational Risk reason: "Reduces operational errors by providing clear guidelines and protocols." - tag: Communication Risk @@ -24,8 +24,8 @@ practice: attendant: - tag: Inflexibility Risk reason: "May limit creativity and flexibility by enforcing strict adherence to standards." - - tag: Implementation Risk - reason: "Can introduce complexity and delays during the implementation phase." + - tag: Schedule Risk + reason: "Adhering to standards can introduce scope creep during the implementation phase." - tag: Compliance Risk reason: "Ensuring continuous compliance with evolving standards can be challenging." related: diff --git a/docs/practices/External-Relations/Outsourcing.md b/docs/practices/External-Relations/Outsourcing.md index 031598507..fabecbd37 100644 --- a/docs/practices/External-Relations/Outsourcing.md +++ b/docs/practices/External-Relations/Outsourcing.md @@ -26,6 +26,8 @@ practice: reason: "May introduce communication challenges with external teams." - tag: Security Risk reason: "Potential risks related to data security and confidentiality." + - tag: Market Risk + reason: "Increasing the size of the supply chain introduces risks that the state of that supply chain changes with the market." related: - ../Planning-and-Management/Contract - ../Communication-and-Collaboration/Stakeholder-Management diff --git a/docs/practices/Planning-And-Management/Design.md b/docs/practices/Planning-And-Management/Design.md index 275a2f6f6..1b6ccecc9 100644 --- a/docs/practices/Planning-And-Management/Design.md +++ b/docs/practices/Planning-And-Management/Design.md @@ -13,6 +13,7 @@ practice: - "Software Architecture" - "Design Patterns" - "Architecture" + - "Research and Design" mitigates: - tag: Conceptual Integrity Risk reason: "Provides a clear structure and organization, making the system easier to understand and use." @@ -20,6 +21,8 @@ practice: reason: "Guides the development process, ensuring that the system meets requirements and design specifications." - tag: Operational Risk reason: "Ensures that the system architecture supports operational requirements and scalability." + - tag: Market Risk + reason: (Research and) design allows you to leapfrog competitors and provide new sources of value. attendant: - tag: Boundary Risk reason: "Design decisions can create boundaries that limit flexibility and adaptability." @@ -27,6 +30,8 @@ practice: reason: "Creates dependencies on software components and design patterns." - tag: Feature Fit Risk reason: "Too much design up-front can create problems meeting feature requirements." + - tag: Funding Risk + reason: "Design can be an expensive bet that doesn't lead to improved software." related: - ../Planning-and-Management/Requirements-Capture - ../Development-and-Coding/Coding diff --git a/docs/practices/Planning-And-Management/Prioritising.md b/docs/practices/Planning-And-Management/Prioritising.md index 3b4d359e6..6326a9646 100644 --- a/docs/practices/Planning-And-Management/Prioritising.md +++ b/docs/practices/Planning-And-Management/Prioritising.md @@ -24,6 +24,8 @@ practice: attendant: - tag: Scarcity Risk reason: "Prioritization can create dependencies on specific tasks or features." + - tag: Market Risk + reason: "Prioritising a single client or narrowing scope reduces diversification, increasing exposure to changes in the market." related: - ../Planning-and-Management/Requirements-Capture - ../Communication-and-Collaboration/Retrospectives diff --git a/docs/practices/Planning-And-Management/Stakeholder-Management.md b/docs/practices/Planning-And-Management/Stakeholder-Management.md index 8d2ec30f7..fdf0dfc28 100644 --- a/docs/practices/Planning-And-Management/Stakeholder-Management.md +++ b/docs/practices/Planning-And-Management/Stakeholder-Management.md @@ -18,7 +18,7 @@ practice: - tag: Coordination Risk reason: "Allows stakeholders to coordinate on their work and demands." - tag: Communication Risk - reason: "Facilitates clear and consistent communication between stakeholders." + reason: "Facilitates clear and consistent communication between stakeholders." attendant: - tag: Coordination Risk reason: "Requires effective coordination among all stakeholders, which can be challenging." diff --git a/docs/risks/Feature-Risks/Conceptual-Integrity-Risk.md b/docs/risks/Feature-Risks/Conceptual-Integrity-Risk.md deleted file mode 100644 index e60090b24..000000000 --- a/docs/risks/Feature-Risks/Conceptual-Integrity-Risk.md +++ /dev/null @@ -1,26 +0,0 @@ ---- -title: Conceptual Integrity Risk -description: Risk that the software you provide is too complex, or doesn't match the expectations of your clients' internal models. -featured: - class: ff - element: '' -sidebar_position: 3 -tags: - - Risks - - Conceptual Integrity Risk -part_of: Feature Risk ---- - - - -![Conceptual Integrity Risk](/img/generated/risks/feature/conceptual-integrity-risk.svg) - -[Conceptual Integrity Risk](/tags/Conceptual-Integrity-Risk) is the risk that chasing after features leaves the product making no sense, and therefore pleasing no-one. - -Sometimes users _swear blind_ that they need some feature or other, but it runs at odds with the design of the system, and plain _doesn't make sense_. Sometimes the development team can spot this kind of conceptual failure as soon as the suggestion is made, but usually it's in coding that this becomes apparent. - -Sometimes it can go for a lot longer. Here's an example: I once worked on some software that was built as a score-board within a chat application. However, after we'd added much-asked-for commenting and reply features to our score-board, we realised we'd implemented a chat application _within a chat application_, and had wasted our time enormously. - -[Feature Phones](https://en.wikipedia.org/wiki/Feature_phone) are another example: although it _seemed_ like the market wanted more and more features added to their phones, [Apple's iPhone](https://en.wikipedia.org/wiki/IPhone) was able to steal huge market share by presenting a much more enjoyable, more coherent user experience, despite being more expensive and having _fewer_ features. Feature Phones had been drowning in increasing [Conceptual Integrity Risk](/tags/Conceptual-Integrity-Risk) without realising it. - -Conceptual Integrity Risk is a particularly pernicious kind of [Feature Risk](/tags/Feature-Risk) which can only be mitigated by good design and [feedback](/thinking/Cadence). Human needs are [fractal in nature](/estimating/Fractals): the more you examine them, the more complexity you can find. The aim of a product is to capture some needs at a *general* level: you can't hope to anticipate everything. As with the other risks, there is an inherent [Schedule Risk](/tags/Schedule-Risk) as addressing these risks takes _time_. \ No newline at end of file diff --git a/docs/risks/Feature-Risks/Feature-Fit-Risk.md b/docs/risks/Feature-Risks/Feature-Fit-Risk.md index 1cec30007..ea9796432 100644 --- a/docs/risks/Feature-Risks/Feature-Fit-Risk.md +++ b/docs/risks/Feature-Risks/Feature-Fit-Risk.md @@ -42,4 +42,20 @@ In the above diagram, we can see Feature Fit Risk being addressed by [Analysis]( ### 4. Evolving Requirements -**Threat:** Not reassessing the design when new requirements emerge can lead to delivering features that no longer align with the client’s current needs. \ No newline at end of file +**Threat:** Not reassessing the design when new requirements emerge can lead to delivering features that no longer align with the client’s current needs. + +### 5. Accessibility Concerns + +**Threat**: It's easy to ignore edge cases around _types of user_, failing to consider the full breadth of platforms the software will need to run on, ease-of-use, visual accessibility, auditory accessibility and cognitive accessibility. + +### 6. Over-Complication + +**Threat**: In an effort to provide as much as many features as possible, software can become over-complicated and hard to use. Trying to mitigate [Feature Fit Risk](/tags/Feature-Fit-Risk) can lead to [Complexity Risk](/tags/Complexity-RisK). + +:::tip Anecdote Corner + +The excessive menu-diving in [Feature Phones](https://en.wikipedia.org/wiki/Feature_phone) of the late 1990s are an example of trying to account for too much [Feature Risk](/tags/Feature-Fit-Risk): although it _seemed_ like the market wanted more and more features added to their phones, [Apple's iPhone](https://en.wikipedia.org/wiki/IPhone) was able to steal huge market share by presenting a much more enjoyable, coherent user experience, despite being more expensive and initially having _far fewer_ features. + +Feature Phones had been drowning in increasing numbers of box-ticking features while ignoring the feature that users really wanted: a clear, responsive user interface and ease-of-use. + +::: \ No newline at end of file diff --git a/docs/risks/Feature-Risks/Feature-Risk.md b/docs/risks/Feature-Risks/Feature-Risk.md index 45fc43187..8c38c706b 100644 --- a/docs/risks/Feature-Risks/Feature-Risk.md +++ b/docs/risks/Feature-Risks/Feature-Risk.md @@ -1,6 +1,6 @@ --- title: Feature Risk -description: Risk you face when providing features for your clients. +description: Risks you face when providing features for your clients. featured: @@ -32,3 +32,4 @@ Not considering [Feature Risk](/tags/Feature-Risk) means that you might be build + diff --git a/docs/risks/Feature-Risks/Implementation-Risk.md b/docs/risks/Feature-Risks/Implementation-Risk.md index 3e7a1cc0f..b2be20560 100644 --- a/docs/risks/Feature-Risks/Implementation-Risk.md +++ b/docs/risks/Feature-Risks/Implementation-Risk.md @@ -1,6 +1,6 @@ --- title: Implementation Risk -description: Risk that the functionality you are providing doesn't match the features the client is expecting, due to poor or partial implementation. +description: Risk that the functionality you are providing doesn't correctly implement the perceived solution you are trying to build for your clients. featured: class: ff element: '' @@ -13,6 +13,42 @@ part_of: Feature Risk -The [Feature Risk](/tags/Feature-Risk) family also includes things that don't work as expected, that is to say, [bugs](https://en.wikipedia.org/wiki/Software_bug). Although the distinction between "a missing feature" and "a broken feature" might be worth making in the development team, we can consider these both the same kind of risk: _the software doesn't do what the user expects_. We call these [Implementation Risks](/tags/Implementation-Risk). +[Implementation Risk](/tags/Implementation-Risk) exists in the gap between _what you are trying to build_ and _what you actually build_. That is, the difference between your software in theory and in practice. It includes things that don't work as expected, that is to say, [bugs](https://en.wikipedia.org/wiki/Software_bug) and missing features. A good way of looking at this might be to consider it the sum of all the development items you have on your to-do list. -It's worth pointing out that sometimes, _the user expects the wrong thing_. This is a different but related risk, which could be down to [training](/tags/Training), [documentation](/tags/Documentation) or simply a [poor user interface](/tags/Communication-Risk) (and we'll look at that more in [Communication Risk](/tags/Communication-Risk).) +## Worked Example + +![Reducing Implementation Risk Via Automated Testing](/img/generated/risks/posters/implementation-risk.svg) + +In the above diagram, we can see [Implementation Risks](/tags/Implementation-Risk) being addressed by [Automated Testing](../../practices/Testing-And-Quality-Assurance/Automated-Testing) - building out a series of examples and running them to make sure the software behaves as expected. The downsides of this may include the extra [complexity](/tags/Complexity-Risk) in the project and the [impact to the schedule](/tags/Schedule-Risk) of building the tests. + +As you can see from the table at the top, many of the practices we adopt in software development have been designed for the purpose of tackling [Implementation Risks](/tags/Implementation-Risk), but incur their own overheads in terms of effort and time. + +## Example Threats + +### 1. Incorrect Assumptions about Inputs + +**Threat**: it's easy to assume that the most common form of input represents the entire class, only for unusual or obscure or unusual input cases to reveal themselves as implementation issues. + +### 2. Leaky Abstractions + +**Threat**: In a similar way, abstractions that make sense in the design phase can often fail to usefully model real-world concerns. + +### 3. Not Working As Advertised + +**Threat**: A lot of programming languages and libraries purport to giving you a certain piece of functionality which you come to rely on or expect in your own code. However it later transpires that they don't completely meet your expectations. Your work has been built on top of faulty assumptions. + +### 4. Unfamiliar Domain + +**Threat**: If you or your team are using new tools, working in a new domain or making use of unfamiliar algorithms or libraries you should expect elevated levels of implementation risk while you build your [Internal Model](/tags/Internal-Model) of that domain. + +### 5. "Hard" Domains + +**Threat**: Implementation risks are more prevalent in certain areas of computing, such as concurrency, memory management, security, algorithms with complex time/space tradeoffs and so on. See [Complexity Risk](/tags/Complexity-Risk) and [Security Risk](/tags/Security-Risk). + +:::tip Anecdote Corner + +Implementation Risks lead to bugs and disappointed clients, but often the results are more serious. The original wireless (WiFi) network protocol, [IEEE 802.11](https://en.wikipedia.org/wiki/IEEE_802.11) from 1997 was supposed to offer security via [WEP - Wired Equivalent Privacy](https://en.wikipedia.org/wiki/Wired_Equivalent_Privacy). However, there were severe design flaws in the algorithm and in the early 2000's it was proven to be completely insecure to the point that you could fairly trivially recover a WEP pass-key just by snooping the encrypted network. + +Having security experts [review](/tags/Review) the standard would have helped, however there is also legal context around this that the US had export restrictions around cryptography at the time which would have hampered strong wireless security anyway. + +::: diff --git a/docs/risks/Feature-Risks/Market-Risk.md b/docs/risks/Feature-Risks/Market-Risk.md index 57e26c6f6..e41d4a289 100644 --- a/docs/risks/Feature-Risks/Market-Risk.md +++ b/docs/risks/Feature-Risks/Market-Risk.md @@ -13,8 +13,6 @@ part_of: Feature Risk -![Market Risk](/img/generated/risks/feature/market-risk.svg) - Market Risk is a term from finance: > "Market risk is the risk of losses in positions arising from movements in market prices." - [Market Risk, _Wikipedia_](https://en.wikipedia.org/wiki/Market_risk) @@ -23,6 +21,43 @@ I face market risk when I own (i.e. have a _position_ in) some [Apple](https://a This risk applies equally well when building a software product, as the software you're building is effectively your stock and its value is whatever the market places on it (i.e. what people are willing to pay). -Even projects that are internal to a company are not immune: they still need to have a value to the company and therefore suffer Market Risk. +Even projects that are internal to a company are not immune: they still need to have a value to the company and therefore suffer Market Risk. If you have multiple internal customers for your software or a single highly important internal customer, you will be less exposed to internal market risk. Since the _market_ decides what it is prepared to pay, Market Risk tends to be outside your control. Although, as shown in the diagram, you can use tools like **marketing** to try and engage with your market and get them to see the value in what you are doing. + +## Worked Example + +![Market Risk](/img/generated/risks/posters/market-risk.svg) + +In the above diagram, a successful Software-as-a-Service (SaaS) company has found a niche with some high-value clients. While this means they don't suffer [Funding Risk](/tags/Funding-Risk), they are susceptible to the whims of those clients. In order to reduce the [Market Risk](/tags/Market-Risk), they decide to engage a marketing company to help them find new clients to work with, potentially in an adjacent domain. + +The wider client base reduces the life-threatening impact of one of the original clients leaving, but these new clients require additional functionality in the software, increasing it's complexity and absorbing more of the development budget. + +## Example Threats + +### 1. Technological Disruption + +**Threat**: A competitor releases a product that eats into your share of the market, or creates some innovation that renders your product obsolete. + +### 2. Changing Market Fundamentals + +**Threat**: Factors such as interest rates, inflation rates and exchange rates may all affect the financial health of your software. + +### 3. Not Listening To The Market + +**Threat**: It's easy to ignore the wider market moves and hope that they are background noise. Not paying attention to how (potential) customers are behaving in the market may lead to surprise. + +### 4. Financial Leverage + +**Threat**: Taking on too much debt (i.e. borrowing too much) increases market risk as creditors expect to be paid irrespective of market conditions. + +### 5. Ignoring + +:::tip Anecdote Corner + +While not a traditional software company, [WeWork](https://en.wikipedia.org/wiki/WeWork) (a provider of co-working spaces) nevertheless branded itself as one and was able to borrow heavily against its "tech" image. They relied on high levels of debt for rapid expansion which raised eyebrows at the time it filed for IPO in 2019. + +However, in 2020, the COVID-19 pandemic hit and led to a massive shift to remote work, leading to the CEO, Adam Neumannm, being ousted for poor financial discipline. The [New York Times](https://web.archive.org/web/20191102160054/https://www.nytimes.com/2019/11/02/business/adam-neumann-wework-exit-package.html) called this "an implosion unlike any other in the history of start-ups". + + +::: \ No newline at end of file diff --git a/numbers/Practices.numbers b/numbers/Practices.numbers index 0de14f8188a59e66b408adb7a8b2d456c81cefec..e9b307ff6a4035bc9effdbd2fb1a562ac7531c55 100644 GIT binary patch delta 16369 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 delta 16167 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 X*6DT|8H#7J4lhX;ldn#bApHLT1^kwg diff --git a/src/images/generated/risks/posters/implementation-risk.adl b/src/images/generated/risks/posters/implementation-risk.adl new file mode 100644 index 000000000..e270fbe23 --- /dev/null +++ b/src/images/generated/risks/posters/implementation-risk.adl @@ -0,0 +1,24 @@ + + + + + + + + Automated Testing + + + + + + + diff --git a/src/images/generated/risks/posters/market-risk.adl b/src/images/generated/risks/posters/market-risk.adl new file mode 100644 index 000000000..0fdf1d627 --- /dev/null +++ b/src/images/generated/risks/posters/market-risk.adl @@ -0,0 +1,29 @@ + + + + + + + + + Marketing + + + + + + + diff --git a/static/img/generated/risks/posters/implementation-risk.svg b/static/img/generated/risks/posters/implementation-risk.svg new file mode 100644 index 000000000..bead29960 --- /dev/null +++ b/static/img/generated/risks/posters/implementation-risk.svg @@ -0,0 +1,1914 @@ + + + + http://robs-pro:8080/api/renderer?format=svg + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/static/img/generated/risks/posters/market-risk.svg b/static/img/generated/risks/posters/market-risk.svg new file mode 100644 index 000000000..1b75777a1 --- /dev/null +++ b/static/img/generated/risks/posters/market-risk.svg @@ -0,0 +1,1924 @@ + + + + http://robs-pro:8080/api/renderer?format=svg + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +