That someone can easily see what the system is doing and why.
Self scaling, Self healing
Real time reporting is a contradiction, it’s about how out of date we can get
Don’t solve infrastructure problems in your application
SLA’s can be monitored, and reacted to in message driven code
Why am I doing this ? How will this fail ?
Done, Done, Done – Backward compatible solution in prod, with users using it
Just Good Enough – Tied up with You Aren’t Going to Need It, we don’t need to gold plate every part of our system.
Incremental Change – Make small changes, testing and releasing frequently.
Evolutionary Design – Modifying the design of a system as it is developed.
Convention over Configuration – Allow people to configure the framework, but if sensible defaults are provided, they probably wont change them.