The (Software) Innovator’s Glossary

This is a collection of terms I use and/or encounter in the materials on this site, my classes, and general travels, etc. Please suggest additions in the comments below!

AIDA(OR)

First introduced in the 19th century (yes, really) by E. St. Elmo Lewis, this is a framework for thinking through customer acquisition and, with the addition of the ‘OR’, retention as well. The steps are: attention, interest, desire, action, onboarding, retention. I often use it for storyboarding (post on storyboarding a customer journey with AIDA) and as a way to think through the Customer Relationship and Channel portions of the Business Model Canvas.

Agile

This is a set of ideas about how to make the software development process more effective and less bureaucratic, introduced in 2001 in ‘The Agile Manifesto’. Unlike most current books about agile, the original manifesto was only 68 words long. Here you can find a Tutorial on Agile and a Workshop on Agile Product Design.

Angular

This is a Javascript-based development framework maintained by Google, developed on top and heavily drawing on the Javascript library Typescript. Originally focused on ‘SPA’s’ (single-page applications), it has become increasingly popular as more web applications have gone in that direction. Angulr is primarily focused on rendering user Views with HTML and Javascript. It does not specify a particular Model, though it’s heavily informed by Typescript’s approach to data.

Assumption

In the world of Lean Startup (see below) an assumption is a testable proposition for a venture that can be proven or disproven with one or more experiments.

Balsamiq

This is a long-standing application (available online and on PC, Mac) for low-fidelity prototyping. It is ‘opinionated’ in the sense that it’s specifically focused on exploratory, low-fidelity prototyping (vs. high fidelity prototyping in Figma, etc.).

Boostrap

Describe as a CSS-framework, Bootstrap includes HTML, CSS, and JS code and is a modular and popular choice for building user interfaces.

Controller

See: MVC.

Design Research

This is a general term for a long-standing body of work. In this context it refers to activities like interviewing customers, observing the results of MVP experiments, and usability testing. I’ve organized a systematic view of a few my favorite techniques in The Customer Discovery Handbook.

Design Thinking

Design Thinking refers to a body of work which uses a pairing of empathy and creativity to drive relevant, profitable solutions. This site offers a collection of tutorials, examples, templates in workshops in the Product Design section of the curriculum.

Figma

This is a web-based high-fidelity prototyping application.

Fogg Curve

This is a behavioral model introduced by B.J. Fogg that describes the inverse relationship between motivation and ability/easiness. Basically, this is the result that if a user is highly motivated, their required action can be more difficult.

Hook Framework

This is a framework introduced by Nir Eyal that describes and offers a framework for understanding user habits. It has four parts: the hook, the action, the (variable) reward, and investment. Here is an introduction to the Hook Framework, and Nir’s page (see previous link) has more detail.

Lean Startup

This is a set of ideas and practices introduced by Eric Reis in his book of the same name in 2011. It has become the go-to framework for evidentiary innovation. Here you’ll find a tutorial on Lean Startup and a workshop on using lean/evidentiary innovation.

Model

See: MVC.

MVC

This is a set of concepts about how to think through a piece of software as having a model (where the data lives), view (what the user sees), and controller (the procedural steps of what the software does based on input). This site has a tutorial on the MVC.

MVP

The Minimum Viable Product is a concept from Lean Startup. The MVP is a learning vehicle (which may or may not be an actual product) for testing assumption. This site offers a set of MVP patterns and case studies.

Needfinding

This is a body of work from Stanford’s Product Design program in the 1960’s. It offers a set of ideas about how to anchor to problems vs. solutions and to work with subjects to arrive at useful solutions. The personas tutorial here introduces practice in that area.

Problem Scenario

This is a general term for a testable statement of customer need. For a consumer product, it would be a need or desire. For a business product, it would be a job that needs to be done. The personas tutorial introduces problem scenarios (and the alternatives that go with them) in the context of personas. The Customer Discovery Handbook describes them in terms of testable persona and problem hypotheses.

Prototype

Prototypes is a general term for a descriptive items whose purpose is to illustrate, demonstrate or a test a hypothetical product. A wireframe is a kind of prototypes (pertinent to software).

React

This is a Javascript-based development framework maintained by Facebook (Meta). Originally focused on ‘SPA’s’ (single-page applications), it has become increasingly popular as more web applications have gone in that direction. React is primarily focused on rendering user Views with HTML and Javascript. It does not specify a particular Model and it’s flexibly integrated to the developer’s CSS framework of choice.

Storyboard

Storyboards are a general technique for using narrative to think through customer interactions in a sequential, vivid way. This site has a workshop on storyboarding.

TailwindCSS

This is an open-source CSS component library, maintained by Microsoft.

Use Case

Use case is sometimes used as a general term for ‘a way that a user might use a product’, but it also has a specific definition as a way of describing (in a relatively detailed way) software interactions.

User Story (aka Agile User Story)

The user story is a specific syntax for describing ways a user may want to interact with a product. They are generally created by a product person/product designer and are used for discussion purposes with product implementors/developers to think through implementation. This site has a tutorial on user stories.

Value Proposition

A value proposition is a specific, testable idea about something a customer would value. It’s used in the material here on needfinding in conjunction with problem scenarios and alternatives (where we lean a value proposition against the best current alternative for a customer problem scenario and ask if the VP is better enough than the alternative). It is also an element in the Business Model Canvas.

View

See: MVC.

Wireframe

A wireframe is a sketch of a possible software user interface. It is a kind of prototype.