What do we want to understand?.About the functional behaviour of an EUT first and then its attributes in the larger context of its relationship with other EUTs and the environment.
Understanding functionality implies understanding the intended behaviour. This is about understanding the business logic that governs the behaviour which translates to identifying the various conditions responsible for the behaviour.
Having understand the basic functional behaviour of an EUT, it is necessary to understand its relationship to other EUTs. Who does this depend on, who does connect with helps us understand the larger picture of where the EUT fits in. Understanding this larger picture and relating this to the user and therefore usage pattern enables us to appreciate the importance of this EUT to great experience. Once this is understood, we are ready to dig into the expectations of the non-functional aspects like performance, load handling ability, compatibility, security etc.
In summary the key elements to good understanding of an EUT are:
1. Functional behaviour – Conditions, Input specification
2. Interactions, Dependencies with other EUTs and flows in which EUT participates
3. Users who will get to use this EUT, usage patterns, environment details
4. Expectations of users in terms of attributes of the EUT