Critical Decision Concept in the Algorithmic Accountability Act
| |

Critical Decision Concept in the Algorithmic Accountability Act

The Algorithmic Accountability Act of 2022, here, applies to systems that help make, or themselves make (or recommend) “critical decisions”.  Determining if something is a “critical decision” determines if a system is subject to the Act or not. Hence the interest in the discussion, below, of the definition of “critical decision”. The Act defines a…

Algorithmic Accountability Act of 2022 and AI Design
| |

Algorithmic Accountability Act of 2022 and AI Design

The Algorithmic Accountability Act of 2022, here, is a very interesting text if you need to design or govern a process for the design of software that involves some form of AI. The Act has no concept of AI, but of Automated Decision System, defined as follows. Section 2 (2): “The term “automated decision system”…

Does the EU AI Act apply to most software?
| |

Does the EU AI Act apply to most software?

Does the EU AI Act apply to most, if not all software? It is probably not what was intended, but it may well be the case.  The EU AI Act, here, applies to “artificial intelligence systems” (AI system), and defines AI systems as follows: ‘artificial intelligence system’ (AI system) means software that is developed with…

Data Authenticity, Accuracy, Objectivity, and Diversity Requirements in Generative AI
|

Data Authenticity, Accuracy, Objectivity, and Diversity Requirements in Generative AI

In April 2023, the Cyberspace Administration of China released a draft Regulation for Generative Artificial Intelligence Services. The note below continues the previous one related to the same regulation, here.  One of the requirements on Generative AI is that the authenticity, accuracy, objectivity, and diversity of the data can be guaranteed.  My intent below is…

Private Data Use Consent as a Generative AI Compliance Requirement
|

Private Data Use Consent as a Generative AI Compliance Requirement

In a previous note, here, I wrote that one of the requirements for Generative AI products/services in China is that if it uses data that contains personal information, the consent of the holder of the personal information needs to be obtained. It seems self-evident that this needs to be a requirement. It is also not…

Decreasing the Odds of Misunderstanding
| |

Decreasing the Odds of Misunderstanding

A requirements model is, in simplest terms, a set of labeled propositions: most of it is natural language text. If so, how can you reduce the odds of it being misunderstood? Natural language is vague, ambiguous, unclear, while systems/products/services we make to solve requirements tend to be well defined, at least when they’re made; hence…

Conditions for Incomplete Requirements Models
|

Conditions for Incomplete Requirements Models

When is a requirements model incomplete? The answer depends on the requirements modeling language (RML) used to make the model. Therefore, when you choose an RML, you are also choosing its own definition of when a model is incomplete.  The reason that conditions for model incompleteness are important, is that you cannot claim that you…

A Trigger for Requirements Change
|

A Trigger for Requirements Change

There is a simple condition, called “fitness improvement” that triggers (i.e., is both necessary and sufficient for) the change of a requirements model. The problem with it is that it is simple to define, but expensive to check when it verifies in practice. What is that condition, and why is checking it expensive? In discussing…

Conditions for Relevant Changes to Requirements Models
| |

Conditions for Relevant Changes to Requirements Models

Let’s say that there was a requirements model M1, we made a change to it, and we call the changed model M2. What can be said about the relationship between the contents of M1 and M2? To make this simpler to discuss, suppose that we changed M1 by refining a requirement in it. To further…

Are Refinement and Decomposition Equivalent?
|

Are Refinement and Decomposition Equivalent?

In requirements modeling languages, refinement and decomposition show up as two relationships over requirements. Both terms are also, somewhat confusingly, used to refer to processes for changing the information in a requirements model. Although they have different origins, and appear in different modeling languages, they are actually not independent relationships. I will argue below that…

Requirements Lifecycle & the DevOps Loop
|

Requirements Lifecycle & the DevOps Loop

It requires paraconsistent reasoning and involves cognitive dissonance to think at the same time about requirements in the way promoted in mainstream requirements engineering, and then use the DevOps loop (and the broader model), a method that has been demonstrated to work (and I’ve seen it applied in a team I was part of in…

Requirements Satisfaction ≠ Customer Satisfaction
| |

Requirements Satisfaction ≠ Customer Satisfaction

There is engineering quality of a product or service, which is fitness to the specification, and there is perceived quality, or subjective quality, which is proportional to the distance between expectations and experience of the person asked. What is the relationship between these, between specification, requirements, expectations, and experience? This is a longstanding question in…

Choice in Absence of Utility and Probability Estimates
| |

Choice in Absence of Utility and Probability Estimates

In expected utility models, utility quantifies preferences, probability quantifies uncertainty. Sounds simple, elegant, but tends to be expensive. What if options can be identified, but there is no information about preferences or uncertainty in a format that can be translated into, respectively, utility and probability? What is an alternative decision process, which is still structured…

Requirements Evolution, Change, and Update
| |

Requirements Evolution, Change, and Update

What could it mean that a “requirement evolves”? Is it the same to say that a requirement evolves and that it changes? How are requirements evolution and change related to updates of sets of requirements?  The term “evolution” has rigorous definitions in biology. A textbook one is as follows (it is carried over from [1],…

Requirements Satisfaction as Expected Utility Maximization
|

Requirements Satisfaction as Expected Utility Maximization

What are the implications of seeing requirements satisfaction as a case of utility maximization? Expected Utility Theory is the mainstream framework (or, at least the one taught first) in economics for conceptualizing rational decision making. Can the problem of satisfying some given set of requirements be translated into that framework? What, if anything, is gained…

When Is a Requirement Accurate?
| |

When Is a Requirement Accurate?

What conditions should a requirement satisfy, to be considered accurate? It turns out that this is a very complicated question. Two easy, yet unsatisfying ways out are (i) to think the question is irrelevant, and (ii) to claim that the validation of a requirement answers that question (i.e., if a stakeholder A gave the requirement…

Approaches to Requirements Satisfaction
|

Approaches to Requirements Satisfaction

Given a set of requirements to satisfy, and assuming they can be satisfied together, are we always aiming to find the solution that maximizes the level of satisfaction of all these requirements? Maximization of satisfaction, or more generally, finding an optimal solution to given requirements, is a common way of thinking about what we want…

Requirements as Decision Criteria
|

Requirements as Decision Criteria

Assuming two or more alternative solutions are available, to make a decision means to pick only one of these, or, equivalently here, to commit to one and ignore others. What role do requirements play in such decision making situations?  In classical decision theory [1], the best solution is the one that yields the highest expected…

Specialization versus Transparency
| |

Specialization versus Transparency

In a firm, what is the relationship between transparency of information and specialization of work?  Increasing specialization means that individuals over time deepen a relatively narrow set of skills and knowledge required for these, in response to the opportunities and problems they are responsible for. There are organizational structures that evidently encourage specialization, such as…

Specialization Costs in Functional Organization
|

Specialization Costs in Functional Organization

In a functional organizational structure, each team is responsible for a set of something called functions. An essential property of a functional team is homogeneity of knowledge within the team: people in it usually share similar educational background, similar expertise, similar career development paths. A clear benefit of functional organization is that it allows a…

Nurtured Choice
|

Nurtured Choice

What can you do to influence someone’s decision, if you cannot give them advice? In short, a possible approach is to take actions that satisfy two conditions: Any communication that the action may result in, cannot be interpreted as advice by the decision maker. A simple case is when any information that the action leads…

Alternative Incentives for Positive Network Effects
| |

Alternative Incentives for Positive Network Effects

If a product/service should generate positive network effects, how do you make the value comparable for the 1st and the 1 billionth user? Accomplishing this means that you can offer more value to the early adopters, and if so, then the network of users should grow faster, or equivalently, adoption should be faster. “In economics,…

Limits of Decentralized Autonomous Organizations (DAO)
| |

Limits of Decentralized Autonomous Organizations (DAO)

The crypto glossary at Andreessen Horowitz [1] gives the following definition of a Decentralized Autonomous Organization, or DAO:  “Decentralized autonomous organizations” or DAOs represent exactly what they are called; they are: (i) decentralized so, the rules cannot be changed by a single individual or centralized party; (ii) autonomous, so they operate based on logic written…

The Firm as a Network of Teams
|

The Firm as a Network of Teams

What determines the distribution of knowledge and information flow between teams in a firm? Why are some bigger than others? Why do some teams collaborate more with others? Many small choices made by different people, inside and outside a team, accumulate to hard-to-reverse distribution of expertise, decision authority, and resources, that is, into the set…

Economics of the Acceptability of an Argument
| |

Economics of the Acceptability of an Argument

An argumentation framework [1] is a graph of nodes called arguments, and edges called attacks. If arguments are propositions, and “p1 attacks p2” reads “if you believe p1 then you shouldn’t believe p2”, then an argumentation framework looks like something you can use to represent the relationship between arguments and counterarguments in, say, a debate….

Business Forecasts as Verifiable Explanations of Expected Value
| | |

Business Forecasts as Verifiable Explanations of Expected Value

An OECD report [1] estimated that there were about 41,000 publicly traded companies in the world in 2019. Given the usual reporting requirements of listed companies, each maintains a forecast of future conditions that may matter to its financials. In other words, each of these companies has a narrative about a future, according to what…

Hybrid Definition Networks and Their Role in Innovation
| |

Hybrid Definition Networks and Their Role in Innovation

A Hybrid Definition Network includes definitions for two types of concepts: (i) so-called old concepts having their default definition, from a dictionary or other accepted (and stable) source, and (ii) new concepts, those that have a plastic definition, which is intended to change to reflect how these new ideas are refined through an innovation process….

Linguistic Causes of Distracting Disagreement
| |

Linguistic Causes of Distracting Disagreement

There is disagreement which leads to constructive revision of definitions (see Plastic Definitions and Define/Destroy method), i.e., the improvement of definitions during innovation, and then there is disagreement which is distracting, useless, wastes time, and takes focus and attention away from improvements. Distracting disagreement comes from ambiguity, synonymy, and vagueness, what I call linguistic causes…

How Definitions Embed Past Choices
| |

How Definitions Embed Past Choices

A definition is a record of past decisions. This is a simple idea that’s interesting to unpack. Let’s take the example of the term “Service” that was redefined in another text. There, I took the common definition of “Service” from WordNet, which was the following: Service: work done by one person or group that benefits…

Theories of Definition: Belnap
|

Theories of Definition: Belnap

Belnap is less concerned than Kant with categories of definitions, than with the ”good” properties of definitions. For him, a definition tries to explain the meaning of a word or phrase. ”I consider [definitions] only in the sense of explanations of the meanings of words or other bits of language. (I use ’explanation’ as a…

Theories of Definition: Kant
| |

Theories of Definition: Kant

For Kant, to define is to identify all primitive properties of that which you are trying to define, whereby that set of properties allows you, me, others, to unambiguously distinguish the thing from others. It is important that all these properties in the set, i.e., properties which together make up the definition, are primitive. Primitive…

Plastic Definitions
| |

Plastic Definitions

The Define/Destroy method makes, destroys, rebuilds definitions. A definition is, in other words, the key thing that is made, changed, discarded when applying the method. These definitions are unstable by design, and this makes them very different from ones in glossaries of mature domains of knowledge. In Define/Destroy, a definition is temporary, whereas in, say,…

Define/Destroy a Business Services Marketplace
| |

Define/Destroy a Business Services Marketplace

This text goes into the details of a single Define/Destroy iteration, in a project I was part of in 2017. I show how the Define/Destroy iteration was done, including the detail of the glossary built in the Define part of the iteration, and the glossary remade as a result of the Destroy part of that first iteration.

Define/Destroy: A Paradox to Accelerate Innovation
|

Define/Destroy: A Paradox to Accelerate Innovation

Innovation is iterative: start from an idea, find flaws, replace it with a better one, repeat. Each cycle destroys to rebuild. This is intentional constructive destruction; it isn’t Schumpeter’s creative destruction from systemic contradictions.  Invent, destroy, repeat. If ideas are willingly exposed to, and revised in response to constructive criticism, then the more iterations, the…

Building a Loop around a Requirement
|

Building a Loop around a Requirement

In this text, I take a requirement, explain why it exists, identify variables that matter, hypothesize their relationships, and explain how to use this information when designing a solution to the requirement, and the mechanism for evaluating how well the solution satisfies the requirement. In other words, I take a requirement and build a Requirements…

Labeled Directed Graphs from Requirements Loops
|

Labeled Directed Graphs from Requirements Loops

For any Requirements Loop, it is possible (and not difficult) to define directed labeled graphs that reflect, in a well defined format, specific properties of that loop. The graphs can be used to compute answers to some specific questions about the propositions and relationships between propositions in a Requirements Loop. In turn, we can make…