Is onboarding a non-functional requirement?
I work on a team that manages DevOps tools for a software company. When an engineer from one of our product teams wants to use one of our tools, they clone a series of Jira tickets and work through them in order. This could be something like:
- Create an account at externalservice.com
- Reach out to us when your account is set up
- Start using the service; here are some examples of what you can do
We call these onboarding flows "non-functional requirements", and I just found out that's an Agile concept. Reading about NFRs, it sounds like they typically describe the standards a product has to meet around performance, security, and usability, e.g. "systems should be online 99.9% of the time".
My question is: is an onboarding workflow related to a product an NFR in Agile, or is there another concept that fits better?
Demir last edited by
TL;DR: No. Onboarding is a waste.
Time and effort invested "Onboarding" is neither a functional or a non-functional requirement. In our project, we had failed to find how to address such situations within normal agile frameworks, and even on the agile manifesto itself. We went deeper and found a potential answer for such situations in agile's parent - Lean. More specifically, in Lean waste management.
In our teams we started tracking efforts invested on such wasteful activities. Onboarding is a wasteful (albeit necessary) activity. The benefit of tracking this as a waste is that it brings attention to how much effort is repeatedly wasted and helps identifying opportunities for waste reduction and thus, increase profitability.
With that in mind, teams should strive to have low context environments (or applications, or code). The better and clear the environment, the lower the context and thus, shorter the onboarding.