The landscape of computer technology and even software methodology evolves constantly. Like any subculture, software has its buzzwords, hype, and fads. An Executive need not invest heavily in every new concept, but should at least be conversant with the terminology in order to have intelligent conversations.
The following checklist for 2017 represents practices and techniques which we believe have stood the test of time. These should be considered for adoption by every modern government software organization. As an exercise, evaluate your own organization against this checklist. To make it more fun, ask a peer in a different organization to have lunch with you, and challenge them to complete the checklist for their own organization as you complete yours and compare notes.
- My organization uses The USDS Checklist: https://playbook.cio.gov/
- My Engineering Team uses Spikes and has demoed one to me recently
- My Engineering Team uses Rapid Prototyping regularly
- My Engineering Team is familiar with GitHub
- My Engineering team looks for Open Source solutions as a matter of course
- We use virtual containers easily and appropriately
- We have dedicated DevOps functions and personnel
- My Engineering team builds automatic test suites
- We use automated security scanning consistently and periodically
- EXTRA CREDIT: We have read about 18F’s Meritocratic Competency Bid Evaluation and are considering using something similar
Exercises
1. Plan a one hour meeting with one or two of your best engineers to discuss the Strangler Pattern and how it applies to your specific legacy systems. If you have not legacy systems, use this meeting to discuss your automated testing strategy.
2. Plan a two hour meeting with your best engineer and a procurement professional. Take an RFP which has not yet been executed and discuss how it can be changed to make it Agile by contracting for software production capability rather than using detailed requirements. If you have no RFP in process, dig up the last one your organization submitted and use that.
3. Evaluate your organization against our modernity checklist.
4. Plan a one hour meeting to evaluate one of your projects against the USDS playbook checklist.
5. Deputize someone to understand the Wardley-Duncan Map . Have a one hour meeting with them where you begin to build a Map of one of your legacy systems. Have them go away and try to “make a move” as explained here and present it to you later. Decide if it is worth sharing with your entire organization.
6. Invite a peer in a different organization to lunch and challenge them to fill our our “2017 Modernity Checklist”.