Chapter 6. The Business Aspect

Allow me, dear reader, to state some propositions regarding the design of software, for your consideration:

Proposition 0

By definition, any purposive compound of objects and their relations is called a system. (Examples can include a software application, a datacenter, a business organization, a business process, a chemical compound, a written document, a play, a music composition, and so forth.)

Proposition 0a

These compounded elements and their relations are not innate, but are proposed, socially constructed, captured, augmented, determined, and filtered by the designers of that system.

Proposition 0b

Any system is either designed explicitly (purposively), or implicitly. If the design is implicit, its design is regarded and comprehended only after the fact, after the system is in place, as a result of a series of accidents, which is likely non-optimal.

Proposition 1

Certain principles apply to well-designed systems, and these same principles can be employed across the design of any system, though seemingly disparate.

Proposition 1a

The attributes of any well-designed system include, at a minimum:

Fitness to purpose

It must serve what it purports to serve, to help users achieve their goals efficiently.

Felicity

It must afford that purpose in a way that minimizes friction and noise, making it easy and delightful to use, consume, and participate in.

Flexibility

Given that the system operates in a world of frequent change, it should ...

Get Semantic Software Design now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.