Usage Pattern Defined
posted Tuesday, 1 February 2005
Last night a got a real good look a Sun Java Studio Enterprise 7.0 support for profiling and load testing. In that demonstration the term agenda came up to describe what the simulated user was doing.
Although I do like that term, to me it seems less descriptive than the one that I coined many years ago (and I believe Jack has subsequently used in his book). That term was a Usage Pattern. The entire concept is a blatant rip-off of a Use Case with some twists.
What a Usage Pattern has in common with a Use Case is its description of some user activity. In short, it both describes something that the user is going to do. Just as a system will be described by many Use Cases, the overall expected means by which users will interact with that system will be described using many Usage Patterns.
The major difference is that unlike a Use Case, a Usage Pattern will include timing information. For example, “The user takes an average of 15 seconds (std. 10 seconds) to enter their password and request their start page.” A complete Usage Pattern would include a number of these steps complete with timing information or it maybe an aggregate of several Usage Patterns. In the later case, a percentage would be attached with each Usage Pattern. For example, 10% of users follow Usage Pattern A, 50% follow Usage Pattern B, and 40% follow Usage Pattern C. When combined with a transactional rate, the aggregate Usage Patterns are useful in describing a realistic load on your system.
For those of you who maybe interested, Studio plays really nicely but I'll have more to say about that in our newsletter next month.