Skip to content

Instantly share code, notes, and snippets.

@jptoto
Forked from kyleburton/bot-verbs.txt
Created January 24, 2014 20:46
Show Gist options
  • Save jptoto/8606041 to your computer and use it in GitHub Desktop.
Save jptoto/8606041 to your computer and use it in GitHub Desktop.
* How do I release this?
* I must be able to perform a 'rolling' release this in a live system w/o
causing a service interruption
* does it break backward compatability with existing users of the api/system/etc
* do we need to cut a new XSD? A new version (URI prefix) of our API?
* did we make updates to checkouts/SNAPSHOT deps? Do we need to cut new versions of project deps?
* how do I support existing users?
* in what order do the affected systems need to be released?
* are there system or service configuration changes that are required?
* What are the Security implications of my change?
* does this involve sensitive information or data?
* does this expose information across users?
* does this expose information outside our systems?
* What are the data-retention implications of my change (infinities suck)?
* Does this lead to a resource-exhaustion issue? To unbounded resource allocation?
* Can this return an infinite result set?
* Should I consult with other developers / pairs on my design?
* The anwser to this is usually yes
* Do other developers need to be made aware of my changes?
* what are the implications they should be aware of?
* Are there potential concurrency issues when multiple threads are running this code?
* Are there potential concurrency issues when multiple app servers are running this code?
* How do I test this?
* Should I write an automated test for this?
* What are the ways in which this can fail?
* How can this gracefully degrade when it fails?
* Is this internal functionality or public? In other words should it be protected?
* Who should be able to exercise this functionaltiy?
* all users?
* a specific group / role?
* Metrics: how will I know when this is or is not working?
* how will I measure the performance of the feature?
* performance means: are users using it as well as how long does execution take
* How will I monitor this?
* Do we bill based on this feature?
* what do we need to track in order to bill?
* Does any of my code violate CQRS design?
* Does this require a change to our backup process?
* Does this information need to be exported to other systems?
(Caching Layer, Metrics, Analytics, Reporting, Data Warehouse,
Client Data Marts, etc)
* does the data model exist in the destination system?
* Are there implications I should review with product?
* Do I have ideas about this that I should discuss with product?
* What new configuration does this imply or require?
* I understand that this is not a rote / exhaustive list - I will consider
whatever else needs to be considered to do the right thing for the customer,
Relay and my team.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment