[kwlug-disc] La-la land, how to recognize?

Andrew Sullivan Cant acant at alumni.uwaterloo.ca
Sun Feb 21 15:53:38 EST 2021


> Wise: judge architecture by how convenient/useful it is in development,
> i.e. how good is actual dev experience. 👍

One thing I have found help for this is building to a full specific use
cases. As Doug mentions your architecture might be hack-y or well
through out, but having a use case will keep you moving towards
something specific.

This is basically a combination of:
* Behaviour Drive Development (BDD)[1]
* Minimum Viable Product (MVP)[2]
* You aren't gonna need It (YAGNI)[3]

Before you start architecture-ing describe an end-to-end use case,
something that someone in your audience could use. Even if that audience
is just you.

(I like the Cucumber[4] language for writing these. You break your use
cases into Features and Scenarios, expresses everything in
Given/When/Then statements.)

Your goal is now to get that use case running. This means that you have
to get all the necessary layers of your design working to the point
where they will support your use case. And you can ignore, for the
moment, anything which does not support your use case.

Now you have a project which does a thing. Hooray!

Refactor-rinse-and-repeat until you are done. :)


Andrew


[1] https://en.wikipedia.org/wiki/Behavior-driven_development
[2] https://en.wikipedia.org/wiki/Minimum_viable_product
[3] https://en.wikipedia.org/wiki/You_aren%27t_gonna_need_it
[4] https://cucumber.io/




More information about the kwlug-disc mailing list