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…

What is AI Governance for?

What is AI Governance for?

If an AI is not predictable by design, then the purpose of governing it is to ensure that it gives the right answers (actions) most of the time, and that when it fails, the consequences are negligible, or that it can only fail on inconsequential questions, goals, or tasks.

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

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

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

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?

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

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

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

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

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

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?

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

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

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…

Unavoidable Frictions to Transparency

There is transparency when “activities are done in an open way without secrets, so that people can trust that they are fair and honest” [1]. If there is consensus that transparency is desirable, can it be practically achieved? Or, why couldn’t it be achieved? For this to be the case, it should be possible to…

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

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…

The Paraconsistency Tax

The Paraconsistency Tax is the additional cost of having to tolerate inconsistency. What is that cost? Where does it come from? Why is it a tax? 

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: I call this the nurturing of choice. Instead of providing advice that is clearly directed at the elements of the decision problem (as I discussed in my book…

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)

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

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….

Definition Networks and Their Purpose

Definition Networks and Their Purpose

A Definition Network, as its name says, is a network. In it, each node is a definition of a term, and each edge is directed from the term that depends on another: if the definition of term A mentions term B, then there is an edge from B to A, and it reads that A…

Plastic or Rigid Definition? Which to Prefer?

Plastic or Rigid Definition? Which to Prefer?

When you read a definition, which is more useful, to assume that it is rigid or that it can change, that there’s some plasticity? When you propose a definition, are you also intending it to stay as proposed, that is, to be rigid? Or, are you proposing it to help progress towards a better definition…

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…

Unpacking Disagreement over New Ideas

Unpacking Disagreement over New Ideas

”Why is it a problem to have stops? Stops are common. We should be able to add them to a live load.” He was insisting. This made no sense to me.  ”You mean a shipment, right? The load becomes a shipment once matched.” I waited for his confirmation. It wasn’t happening.  This got me thinking…

How New Ideas Use Old Terms

How New Ideas Use Old Terms

One of the observations made in the discussion of conceptual leaps is that new ideas rely on old. Even if new ideas mark discontinuity with old, they also built on old ideas. By old ideas, I mean ideas which are established, non-controversial for a given group of people working together (so they may be controversial…

Conceptual Leaps and Definition Change

Conceptual Leaps and Definition Change

In each iteration of the Define/Destroy method, definitions of terms are changed in order to reflect new ideas. At the beginning of an iteration, we may have a definition D1 of a term T, and at the end, we have D2. The reason we change D1 into D2 is to align the documented meaning of…

How Definitions Influence Future Choices

How Definitions Influence Future Choices

How can definitions make it easy to do some things, and hard to do others? How do they impose constraints on future choices?  If you commit to a definition, meaning you choose one definition of a term over others, then you also take additional commitments. It is a case of getting more than you bargained…

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: Crowds

Theories of Definition: Crowds

There are two ideas which cause trouble when thinking about definitions, and what a good definition may look like.  The first toxic idea is that you can produce a definition which explains all meanings of a term, for everyone, anytime, and everywhere. It is the idea that you can make a successful universal definition.  The…

Theories of Definition: Kripke

Theories of Definition: Kripke

When you try to define something, that thing – be it concrete or abstract, chairs or thoughts – is what your definition is about.  If there is exactly one, unique such thing, your definition should, ideally, unequivocally identify it. If I were to learn that definition, I would know exactly what it is that you…

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 as a Method

Define/Destroy as a Method

Define/Destroy consists of doing a specific set of activities iteratively. This short text outlines how each iteration looks, what it uses as its inputs, and what it produces as its output.

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…

What Is Destructive in a Requirements Loop?

What Is Destructive in a Requirements Loop?

Why is a Requirements Loop a loop, and why is it a destructive loop? Any Requirements Loop has three explanations: an explanation of requirements, of a solution to these requirements, and of how to show that the solution satisfies requirements. Simply put, if an explanation gives the mechanism generating some events of interest (as in…

Requirements Loops: Decomposing an Example

Requirements Loops: Decomposing an Example

An exercise I used to do with students in my Decision Analysis & Requirements Engineering lecture was to ask them to identify a problem that they have at university, and to describe it. My goal was to have them work in that lecture on problems that affected them. One group of students, in the 2019-2020…