When designing a VDI environment, it is important to define the use cases (also called user segmentation). A use case is the gathering of common set of attributes that can be applied to a single pool in Horizon View architecture.The attributes are based on three categories: Users, Applications and Devices. Ideally, you want to minimize the number of use cases where users with similar attributes are logically grouped.
An example of a use case is Power User engineering user group where end users will need 4 monitors, a graphical card, 8 GB RAM and 64 bit OS. Another example might be Task Worker call center workers group who will be using Zero Client, a basic web base app with 2 GB RAM.
The benefit of a use case is it allows us to size the the resources that will be required for each use case.
So now that we have defined what a use case from a high level, how do you actually go about it?
Per image above, three components make up a use case.
Users: They are the most important part of the design. So we need to dig deep down and understand them. Who are they (Dept.)? How many of them? When do they logon/logoff (concurrent, boot/logon/logoff storm) ? What do they do (daily tasks)? How they do it (What applications do they need to do their job)? Where do they log in from (remote vs. internal)? etc ..
Devices: What devices (End Points) do the users use (Zero/Thin/Thick clients, Tablets)? What Operating system will be on device (Windows, Linux, iOS, Android)? What USB peripherals will be connected to device (Printers, scanners, USB storage drives, Signature pads, smart card readers, etc ..)? What security authentication/authorization will be used (Active Directory, 2 factor Authentication, VP, etc ..)?
Applications: The primary objective of any virtualization projected is to connect the user to the application so he/she can do their job! So we need to understand the applications footprint. How any applications are installed today? How many are actually used? How many can be actually virtualized? Do any of these applications have dependencies on other applications? How will licensing work in a virtualized environment? What are the RPO/RTO for these applications? Resource requirements required?
So how do you audit these applications to get the data metrics you need? There are a few 3rd party told out there that can assist. Tools such as (not limited to):
– Stratusphere by Liquidware Labs.
– App DNA by Citrix
– SysTrack by Lakeside Software
– Baseline Desktop Analyzer by RES Software
Once we understood our users, the devices they will be using and the applications that will be accessed, we can define our use case to come up with business requirements that form the foundation of the design.
Thank you for reading.