Barry O Sullivan 2019 - @barryosull
@barryosull
Barry O Sullivan
Your System
New Feature
Hard rules on accepted values
Represented by "Unit" tests
Low level
Hard rules on state changes
E.g. "Cannot check out a cart that is empty"
Represented by "Unit" tests
Mid level
"An itinerary cannot change once it's completed" - Entity
"Org itineraries must have a unique, incrementing ID" - Org
"All email addresses must be unique" - System
Wide scope of temporal constraints = bottlenecks
Represented by "Acceptance" tests
Think of them as "User stories"
High level, combination of value & temporal
Model Processes (Behavioural)
Software for Small/Medium sized Travel Agencies
Learning from experience
£
££
£££
Migrating to new constraints
O
X
Not all constraints are created equal
O
O
X
X
X
X
X
"Well actually . . . "
Building NoteWorthy
Auth
Idea Submission
Proposal Publishing
Crowd Funding
Story Publishing
Generic
Firebase Auth
Assumptive
Typeform + Trello
Core
Web App
Generic*
GoFundMe
Core
Existing System
The legacy system will exert control
It is a key constraint
* Now with more microservices!
@barryosull