green shoots in the brownest field
play

Green shoots in the brownest field Being a startup in government - PowerPoint PPT Presentation

Green shoots in the brownest field Being a startup in government Mat Wall (@matwall) Government Digital Service https://www.gov.uk Friday, 8 March 13 GDS Government development skills largely outsourced in 80s Government IT vendor driven,


  1. Green shoots in the brownest field Being a startup in government Mat Wall (@matwall) Government Digital Service https://www.gov.uk Friday, 8 March 13

  2. GDS Government development skills largely outsourced in 80s Government IT vendor driven, procurement focussed People who can write code (not COBOL) very rare Friday, 8 March 13

  3. GDS set up about 18 months ago Bring digital capability & vision into government Stimulate economy of smaller vendors A startup within government Friday, 8 March 13

  4. Initially build alpha of GOV.UK Now fully released into production Migrating government department sites Beginning to work on transactions Friday, 8 March 13

  5. Design Principles 1. Start with user needs 2. Do less 3. Design with data 4. Do the hard work to make it simple 5. Iterate wildly 6. Build for inclusion 7. Understand context 8. Build services, not websites 9. Be consistent, not uniform 10. Make things open: it makes things better https://www.gov.uk/designprinciples Friday, 8 March 13

  6. reboot the government Friday, 8 March 13

  7. GOV.UK Friday, 8 March 13

  8. Quick answers Friday, 8 March 13

  9. Quick answers Friday, 8 March 13

  10. Quick answers Friday, 8 March 13

  11. Detailed guides Friday, 8 March 13

  12. Detailed guides Friday, 8 March 13

  13. Transactions Friday, 8 March 13

  14. Transactions Friday, 8 March 13

  15. Department sites Friday, 8 March 13

  16. Department sites Friday, 8 March 13

  17. Light weight architecture & development Focussed on user needs Good example of “How to do it” across government Friday, 8 March 13

  18. Strategic architecture Friday, 8 March 13

  19. Very common in government IT Small number of in house architects Often not hands on Almost all development outsourced Friday, 8 March 13

  20. Lay down ground rules Select technologies up front Often vendor focussed / led Friday, 8 March 13

  21. Attempt to: reduce risk minimise cost produce predictable results Friday, 8 March 13

  22. Insert strategic architecture here Friday, 8 March 13

  23. Friday, 8 March 13

  24. ESB Friday, 8 March 13

  25. ESB ESB Friday, 8 March 13

  26. ESB ESB Friday, 8 March 13

  27. ESB ESB OPA Friday, 8 March 13

  28. ESB ESB OPA EDM Friday, 8 March 13

  29. WEB WEB WEB WEB ESB ESB OPA EDM Friday, 8 March 13

  30. Security stuff WEB WEB WEB WEB ESB ESB OPA EDM Friday, 8 March 13

  31. Security stuff WEB WEB WEB WEB XML translation layer ESB ESB OPA EDM Friday, 8 March 13

  32. Security stuff WEB WEB WEB WEB XML translation layer ESB ESB OPA EDM SAN SAP Friday, 8 March 13

  33. Security stuff WEB WEB WEB WEB Enterprise app servers XML translation layer ESB ESB OPA EDM SAN SAP Friday, 8 March 13

  34. Security stuff WEB WEB WEB WEB Enterprise app servers Now, what shall we make? XML translation layer ESB ESB OPA EDM SAN SAP Friday, 8 March 13

  35. Security stuff WEB WEB WEB WEB Imagine being a developer here Enterprise app servers Most decisions made for you XML translation layer ESB ESB Little room for innovation OPA EDM SAN SAP Friday, 8 March 13

  36. reduce risk = no innovation, create lock in minimise cost = ha ha predictable results = slow delivery Friday, 8 March 13

  37. Platforms Friday, 8 March 13

  38. Platforms first = bottom up architecture We want to focus on user needs first Friday, 8 March 13

  39. Most of our apps start out as a rough idea on someones laptop, not as a platform Friday, 8 March 13

  40. Platforms emerge by constant delivery Friday, 8 March 13

  41. Space Friday, 8 March 13

  42. CDN, web & routing P r o Configuration t o t y Web routing p i n g Provisioning Libraries / gems / jars / utils Configuration management Provisioning Services / libraries Persistence Monitoring Services Persistence Continuous integration Monitoring Alerting Performance test Friday, 8 March 13

  43. CDN, web & routing P r o Configuration t Ruby / rails / sinatra/ jekyll o t y Scala / play 2.0 p i n Java / dropwizard g Libraries / gems / jars / utils MongoDB, MySql, ElasticSearch, Redis Provisioning nginx, varnish, Akami puppet statsd / graphite / nagios / ganglia Services funkload Persistence Continuous integration Monitoring Alerting Performance test Friday, 8 March 13

  44. CDN, web & routing P r o Configuration t o t y p i n g Libraries / gems / jars / utils Provisioning Space Services Persistence Continuous integration Monitoring Alerting Performance test Friday, 8 March 13

  45. CDN, web & routing P r o Configuration t o .gov.uk smart t search licensing inside gov y frontend answers p i n g Libraries / gems / jars / utils Content API Provisioning Panopticon MongoDB MySQL Licensing Services need-o-tron Sign on CMS tools Publisher admin Persistence Continuous integration Monitoring Alerting Performance test Friday, 8 March 13

  46. CDN, web & routing P r o Configuration t o .gov.uk routing t search y frontend p i n g Libraries / gems / jars / utils Content API Provisioning MongoDB Panopticon Services need-o-tron Publisher Persistence Continuous integration Monitoring Alerting Performance test Friday, 8 March 13

  47. CDN, web & routing P r o Configuration t o .gov.uk routing t search y frontend p i Content model split across apps n g Libraries / gems / jars / utils Content API Provisioning Complex interaction between apps MongoDB Panopticon Brittle, what if interaction fails? Services need-o-tron Publisher Persistence Continuous integration Monitoring Alerting Performance test Friday, 8 March 13

  48. CDN, web & routing P r o Configuration t o .gov.uk routing t search y frontend p i n g Libraries / gems / jars / utils Content API Provisioning MongoDB Panopticon Services need-o-tron Publisher Persistence Continuous integration Monitoring Alerting Performance test Friday, 8 March 13

  49. CDN, web & routing P r o Configuration t o .gov.uk routing t search y frontend p i n g Libraries / gems / jars / utils Content API Provisioning MongoDB Panopticon Services need-o-tron Publisher Persistence Continuous integration Monitoring Alerting Performance test Friday, 8 March 13

  50. CDN, web & routing P r o Configuration t o .gov.uk routing t search y frontend p i n g Libraries / gems / jars / utils Content API / Provisioning MongoDB Event broadcast Panopticon Services need-o-tron Publisher Persistence Continuous integration Monitoring Alerting Performance test Friday, 8 March 13

  51. Space Help developers create a safe space Create small, simple apps in that space Provide lightweight components & processes, and ability to create more Don’t worry about trying to solve all of the problems up front Allow for innovation & learning Friday, 8 March 13

  52. Momentum Friday, 8 March 13

  53. Momentum We far prefer momentum to strategy Make decisions as late as possible Short iterations mean you can’t go to far wrong Easy to put things back on track Allows for innovation, experiment & learning Friday, 8 March 13

  54. New system: apply to register to vote (ERTP) Initially seemed quite simple Surely just a form and a database? Real world is more complex Friday, 8 March 13

  55. Citizens .... Local authority 1 Local authority 2 Local authority 387 DWP Friday, 8 March 13

  56. Web space Citizen API DWP space Matching API DWP Local auth API LA space .... Local authority 1 Local authority 2 Local authority 387 Friday, 8 March 13

  57. Frontend web Citizen API Matching API MongoDB DWP Monitoring Feeds Local auth API .... Local authority 1 Local authority 2 Local authority 387 Friday, 8 March 13

  58. Frontend web Matching API DWP Local auth API .... Local authority 1 Local authority 2 Local authority 387 Friday, 8 March 13

  59. Frontend web Matching API DWP Local auth API .... Local authority 1 Local authority 2 Local authority 387 Friday, 8 March 13

  60. Frontend web Matching API DWP Local auth API .... Local authority 1 Local authority 2 Local authority 387 Friday, 8 March 13

  61. Frontend web Matching API DWP Anything goes to keep momentum Local auth API .... Local authority 1 Local authority 2 Local authority 387 Friday, 8 March 13

  62. Legacy / complex systems Friday, 8 March 13

  63. So far most of our systems have been very simple Easy to be small, beautiful & agile But that will change with transactions Friday, 8 March 13

  64. Government IT estate complex, old Pre-web technologies Oldest system I have found so far is 40 years! How can we work in this environment? How can we retain our momentum? Friday, 8 March 13

  65. Security stuff WEB WEB WEB WEB Enterprise app servers XML translation layer ESB ESB OPA EDM SAN SAP Friday, 8 March 13

  66. Integration strategies: Could rebuild old system. Could export data from old system into new. Use what we have learned to create our own space, with our own momentum Friday, 8 March 13

Recommend


More recommend