An assumption governing conventional software engineering methodologies is the existence of complete and correct requirements. One case in which this is not true is when the client does not know the requirements; a second is when specifications are unavailable because the domain is not well understood. These establish the need for an exploratory software development method (ESD). Trenouth surveys methodologies, technologies, and programming issues in relationship to ESD.
The survey is short and somewhat unbalanced relative to the two cases motivating it. Developing requirements and extracting domain knowledge are presented as instances of the same phenomenon. The discussion is heavily weighted to the AI programming problem of extracting domain knowledge. Existing concepts and categories for software development are applied, and new ones are presented. For example, the author describes four principles for ESD: it should be continuously executable, easily extendable, conveniently explorable, and usefully explainable. The survey explains how technologies support the ESD principles. It tends to mix levels of explanation. Much of it is at a high level in conceptualizing and categorizing, but some parts have low-level detail.
On balance, the paper presents an interesting short survey of the reasons for ESD, its relationship to methodologies and technologies, and programming issues. It brings together two disparate requirements issues (developing requirements and extracting domain knowledge) into a single issue supporting exploratory development.