Successfully reported this slideshow.

The Forgotten Customer (Socrates 2011)

2

Share

Loading in …3
×
1 of 50
1 of 50

The Forgotten Customer (Socrates 2011)

2

Share

Download to read offline

When doing product definitions, we often attach too less importance on topics like administration, monitoring, integration, troubleshooting, migration, installation etc. If anything, the related requirements are seen through the eyes of a fronted user, although they mostly apply to the administrator role having different needs.

That often leads to the development of some GUI-based point and click tools that are not suited for using them in administration scenarios because implicit requirements are not met. Administration tools should be consistent across sub systems and products, they must be extensible, (de)composable, steps must be easy to repeat, to automate and to track.

It gets increasingly important to focus on management features. Cloud topologies, more complex systems, security and legal aspects, virtualization and mobile applications are changing system administration more than ever. To be able to respond the behavior of all involved roles must change.

The session is for developers, system administrators, requirements experts and people who are busy between these roles (DevOps). Evolving practices and concepts for the collaboration between development and operations will be presented and evaluated. Technical approaches that (also) help to build better manageable systems will be discussed.

When doing product definitions, we often attach too less importance on topics like administration, monitoring, integration, troubleshooting, migration, installation etc. If anything, the related requirements are seen through the eyes of a fronted user, although they mostly apply to the administrator role having different needs.

That often leads to the development of some GUI-based point and click tools that are not suited for using them in administration scenarios because implicit requirements are not met. Administration tools should be consistent across sub systems and products, they must be extensible, (de)composable, steps must be easy to repeat, to automate and to track.

It gets increasingly important to focus on management features. Cloud topologies, more complex systems, security and legal aspects, virtualization and mobile applications are changing system administration more than ever. To be able to respond the behavior of all involved roles must change.

The session is for developers, system administrators, requirements experts and people who are busy between these roles (DevOps). Evolving practices and concepts for the collaboration between development and operations will be presented and evaluated. Technical approaches that (also) help to build better manageable systems will be discussed.

More Related Content

Related Books

Free with a 14 day trial from Scribd

See all

The Forgotten Customer (Socrates 2011)

  1. 1. Session.About http://www.flickr.com/photos/djvirus/3382788789/ http://twitter.com/#!/thomykay
  2. 2. You.Background Developer Tester Product Owner Administrator Devop Developer http://www.flickr.com/photos/eirikref/2928701111/ Me.Background
  3. 3. Administration.Samples Do you know what happens if you change one of the values? Which setting has the most impact to my system? Does it support IPV6?
  4. 4. Administration.Samples How would you replicate the list of settings on a second system? How to get a diff between 2 systems? How to do it on 50 systems?
  5. 5. Administration.Samples Can I combine the steps I’m doing here with another system? I need an additional action in that context – how to do it? Do I really need to enter my 200 entries here?
  6. 6. Administration.Samples Which settings did I change? How can I undo the changes? What happens if I click OK?
  7. 7. Administration.Samples
  8. 8. Admin.CurrentState.What Admins Users
  9. 9. Admin.CurrentState.What  Scattered Management Landscape  Can’t be automated, doesn’t scale  Development delivers the wrong tools to Operations  No or outdated documentation for management features  Toolset in Dev and in Operations is different http://www.flickr.com/photos/lwr/6208698/
  10. 10. Admin.CurrentState.What
  11. 11. Admin.CurrentState.What
  12. 12. Admin.CurrentState.Why  …because we always did it this way  Product Owners are domain experts (hopefully), but not admins  Customer value is seen to narrowed  Dev and Operations don’t talk  Admin in house vs Customer Admin  Operations is 10 years too late in agile http://www.flickr.com/photos/lwr/6208710/
  13. 13. To : Dev, Tester, ProductOwner Subject: Know the Admin Space  Which parts in the SW lifecycle are subject to administrative tasks?  How does administration fit into the SW value chain?  Do you care for the whole lifecycle?  Isn’t it IT that drives more and more purchasing decisions? http://www.flickr.com/photos/58782395@N03/5518992555/
  14. 14. Admin.Geography Product Owner Developers Testers (QA) User Administrator Icons http://creativecommons.org/licenses/by-nc-sa/3.0/ by http://deleket.deviantart.com/art/Face-Avatars-107881096
  15. 15. Admin.Geography
  16. 16. Admin.Roles.Involved  How can I sell it?  How can I support it?  How can I run it? http://shivakumar-mathivanan.blogspot.com/2011/06/bridging-relationship-testers-vs.html
  17. 17. Admin.Roles.Involved • Setup, Teardown for Integration Tests Developers • Development Environment, Debugging • Setup, Teardown for Integration Tests Testers • Smoke Tests, specific configs/states Consultants • (re)configure, extend, integrate, migrations • Application Configuration User/Customer • Verification, Validation (IQ,OQ,PQ) Phone Support • Inventory, Analysis, Troubleshooting Field Eng. • Install, migrate, configure the system Administrator • everything…
  18. 18. Admin.Topologies • Self Service for users, in app Small local setup configuration, wizard style troubleshooters • Still much user involvement Workgroup setup • Local user support for the whole system • Enterprise IT hosted (backend) Local Enterprise • Local user support on department level • Remote vendor support • Global IT hosted, DB Hosting external Distributed Enterprise • Local user support • Remote vendor support • Vendor IT SaaS • Local user support on tenant/department level
  19. 19. Admin.Dimensions Vendor 1 You Vendor 3 Vendor 4 App App App App Platform Platform Platform Platform OS OS OS OS Infrastructure Infrastructure Infrastructure Infrastructure
  20. 20. Admin.Drivers.Legal|Security|Trust  More complicated stacks lead to more challenges in security.  Anonymous might say Hello!  What is your attack surface?  Compliance requirements in Finance, Pharma etc. will not go away!
  21. 21. Admin.Drivers.Cloud|Virtualization  Virtualization/IaaS (host) -> automation needed  PaaS (build) -> more division of labor -> need for (de)composable admin tools  SaaS (consume) -> admin is in house -> easier to build cross functional teams
  22. 22. Admin.Drivers.Development  Funny new frameworks and systems every other year  Higher Technology Stacks  Faster release cycles, no better migrations(?)  More integrations required, more external systems involved.
  23. 23. To : Dev, Tester, ProductOwner Subject: Know the Admin Mindset  _NOT_ interested in the bells and whistles of your app  (more and more) techies (like you!)  is lazy (like you!)  thinks in backups (and recovery!), logs, network - not in apps http://www.flickr.com/photos/jemimus/2561942855/
  24. 24. “Web interfaces and GUI tools are nice and can be considered the icing on the cake.” http://www.flickr.com/photos/melloveschallah/3438153739/
  25. 25. “A true manageable application allows for consistent and repeatable actions in an easy to maintain structure...” Steven Murawski @ Use PowerShell Blog (July 2009) http://tinyurl.com/3yoc9mj http://www.flickr.com/photos/clevercupcakes/4402962654/
  26. 26. DON'T make the administrative interface a GUI. System administrators need a command- line tool for constructing repeatable processes. http://www.flickr.com/photos/cyanocorax/288232991/
  27. 27. Procedures are best documented by providing commands that we can copy and paste from the procedure document to the command line. We cannot achieve the same repeatability when the instructions are: ”Checkmark the 3rd and 5th options, but not the 2nd option, then click OK.” http://www.flickr.com/photos/zetson/3200542528/
  28. 28. Sysadmins do not want a GUI that requires 25 clicks for each new user. Thomas A. Limoncelli in ACM Queue December 2010 http://queue.acm.org/detail.cfm?id=1921361 http://www.flickr.com/photos/tattoodjay/4460324009/
  29. 29. To : Developers, Testers Subject: Know the Admin Tools  Integration test scenarios and production systems - testable with the same tools?  Is setting up a production environment so different?  Think about how to integrate into their toolset and extend it. http://www.flickr.com/photos/jsome1/460270581/
  30. 30. Admin.Tools.PlSqlDeveloper
  31. 31. Admin.Tools.OracleEnterpriseManager
  32. 32. Admin.Tools.Mdt2012
  33. 33. Admin.Tools.PowerGui
  34. 34. Admin.Tools.PowerWF
  35. 35. Admin.Tools.Monitoring
  36. 36. Admin.Tools.Configuration
  37. 37. Admin.Tools.Configuration Relative Origin of Cfengine, Puppet and Chef http://verticalsysadmin.com/blog/unc ategorized/relative-origins-of- cfengine-chef-and-puppet
  38. 38. Admin.Tools.Patterns  Show before/after execution  2 way – text/graphical  (text based) languages create systems or flows  Python, Ruby, PowerShell, Groovy, Bash  Designed for consistency, extensibility, scriptability http://www.flickr.com/photos/fcminutti/5896265856/
  39. 39. Dev.Practices.ManageableSystems Level of Manageability UI over Management Surface Complete Management Surface Make it possible (clean APIs) Ignorance
  40. 40. All.Practices.Collaboration  Bring the admin closer to the team.  in design phase, in dev phase, in operation phase  Benefit from his experiences, skills and mindset.
  41. 41. All.Practices.Collaboration PO Customer Dev Support Admin Developer Situation for COTS, MOTS Admin Tester Proxy One Team Approach Admin PO Customer Dev Support Admin Will it blend?
  42. 42. To : Developers Subject: Call to Action  Now it’s getting complicated…  Uncut from http://queue.acm.org/deta il.cfm?id=1921361 A Plea to Software Vendors from Sysadmins - 10 Do's and Don'ts http://www.flickr.com/photos/thurm/1543218761/
  43. 43. To : Developers Subject: Call to Action  DO have a "silent install" option.  DON'T make the administrative interface a GUI.  DO have a configuration file that is an ASCII file, not a binary blob.  DO include a clearly defined method to restore all user data, a single user's data, and individual items
  44. 44. To : Developers Subject: Call to Action  DO instrument the system so that we can monitor more than just, “Is it up or down?”  DO tell us about security issues.  DON'T scribble all over the disk.  DO publish documentation electronically on your Web site.
  45. 45. To : Administrators Subject: Call to Action  Realize that developers _CAN_ change the system  Realize that you are a customer (or part of the team)  Share your experiences with the system, pain points, the tools you’re using, the way you monitor and troubleshoot
  46. 46. To : Administrators Subject: Call to Action  Demand better documentation.  Talk to Developers!  Demand proper administrative interfaces. Explain, what you need and why.  Unify systems management across apps and layers! Automate, test, code! -> Infrastructure as code
  47. 47. Ah, you know all that? sysadmins as wannabe coders Agile reinvented Just another hype… elitist club of European sysadmins Another day, another manifest obsolete with the cloud Bridging the gap between projects and operations by using Agile techniques in development, project management and system administration. Taken from http://jedi.be/blog/
  48. 48. To : Product Owners Subject: Call to Action  See the (customer) administrator as a second user of your system. He uses the management features.  If you’re not comfortable with the admin domain involve admins, devs, testers.  Do more “As an administrator I want to…”  Balance new features to the cost in operation.
  49. 49. Session.Recap  @ProductOwners: The admin can help you to let your product shine – or fail. Act accordingly.  @Admin: Wanna work with better manageable systems? Get involved.  @Developers: There is someone on the other side of the wall who speaks your language…
  50. 50. Session.Questions Join the Bus(iness) http://www.flickr.com/photos/anaxila/349931518/ http://twitter.com/#!/thomykay

×