There are four main types of applications:
- Configuration Manager applications – these applications have their basis in packages and programs defined in Configuration Manager. When a Configuration Manager application is shopped for by a user, the delivery of the application is automated through Configuration Manager. Shopping also works seamlessly with the new Configuration Manager 2012 Application model. With the user-centric model, users can shop for their own applications on any machine they log on to. The machine–centric model provides the same functionality as previous versions of Shopping.
- Non-Configuration Manager applications – these applications have no software basis in Configuration Manager. Non-Configuration Manager applications can be anything: hardware such as RAM, a new laptop, or even just coffee for the coffee machine. These applications can be used in conjunction with the AD integration feature to provide self-service access to AD permissions. For example, to enable shopping for access to network shares. These applications are freeform yet follow the same approval process and logging.
- OSD – these applications are used to allow users to request OS deployments for their computer. They utilize existing Configuration Manager task sequences aimed at deploying a specific OS.
- WSA - Windows Servicing Assistant Applications launch the Windows Servicing Assistant to guide users through the preparation and execution of an OS deployment.
Applications may be defined as being centrally administered or branch administered. Centrally administered applications are defined entirely using the Shopping Admin Console whereas branch administered applications are initially created using the Shopping Admin Console but its approval and publication must be completed by the branch administrator (see branch shopping).
Shopping applications can be set to require approval before delivery. The approval can either be application-based, where the approvers are set explicitly for the application, or it can be computer category-based, where the approvers are determined according to the computer the user shops from.
When more than one approver is defined for an application, you can choose if the application can be approved by any one of the approvers or must be approved by the whole chain of approvers. When an application is created that does not require approval, approvers are not notified.
Shopping supports application license management. The license count is internally managed by Shopping but can be set to initial values and re-synced from Configuration Manager using the application's Add/Remove Programs entry.
Shopping supports application rental from initial request through to automatic uninstallation once the rental period is finished. Users are able to request extension periods and the whole process is subject to the normal approval process. Application rental is only available for Configuration Manager applications or non-Configuration Manager Applications that are related to AD group membership rental.
There is an optional cost attribute associated with an application, if the cost is set it will be visible to both the user and the approver. The cost is displayed in the currency set on the Shopping Central server.
Self-service OS Deployment
Shopping provides a number of options to enable your users to self-serve OS upgrades, OS refreshes (aka wipe and load) and PC replacements. Refer to Self-service Operating System deployment for a summary of the options with links to more detailed documentation on how to implement them.
There are two methods for organizing applications in terms of their display and their approval that also determine whether an application is available to a particular user on a particular computer.
What the user sees
When a user logs on to a particular computer, what they see is defined by a combination of the User Categories (defining the availability to the user) and the Computer Categories (availability for the computer).
User Categories lets you group applications for presentation in the Shopping Web interface. You can create User Categories that are visible to all users or you can determine which users can see the category based on their AD credentials. There is a special category called Miscellaneous which is a catchall for any application that is not explicitly associated with any user-defined User Categories. This Shopping defined category is visible to all users.
Computer Categories enables you to tailor application approval and availability according to a computer's AD entry, AD group membership or OU membership. The Shopping administrator first creates a Computer Category, selecting computers to associate with it.
When using centrally administrated applications, the Shopping administrator defines a pool of central approvers that is associated with the computer category. When a centrally administrated application is configured to use computer category approval and associated with the Computer Category, the approvers for the application are selected from its pool of central approvers.
When using branch administrated applications, the Shopping administrator associates branch administrators with the computer category. It then becomes the responsibility of the branch administrator to maintain the pool of local branch approvers. The branch administrator also defines whether a particular branch administrated application is made available to branch users and selects branch approvers associated with the application.
Finally, when a user requests a particular computer category application from a particular computer, the approvers associated with the application via the computer category are used. This enables location-based approval systems to be easily set up. For example, in an enterprise with divisions in the UK and the USA, two AD Computer Groups could be defined: one for computers in the UK and another for computers in the USA.
Then in Shopping, one computer category could be created to associate the UK Computer Group with UK-based approvers and another to associate the USA computer group with USA-based approvers. Shopping applications could then be published to the Computer Categories and approvers selected for the application in each category. When a user requests one of these applications on a UK machine, approval is sought from a UK approver and from a US machine, US approval.
Branch shopping provides a mechanism where specific branch administered applications have their approval and publication defined by specific branch administrators associated with a particular Computer Category.
Branch administered applications are defined by a central administrator. When they are set to use branch administration, it is the branch administrators that complete the application definition by determining the branch application's approval and whether or not it is published, thereby appearing to users on the branch. Once the approval and publication for a branch application is completed, it behaves and appears like any other Shopping application.
Central and branch administrators can also:
- Shop for other machines
- Copy applications between machines
- Re-install applications on machines after a rebuild
- Uninstall applications from machines, schedule uninstalls or modify scheduled uninstalls
- Running diagnostics on Shopping applications and view the its log file
There are two sub-types of the standard roles that support branch shopping, namely Branch administrators and Branch approvers.
Branch administrators always act as deputy approvers for any branch application shopped for on the branch and can do the following in the Shopping Web Console:
- Have all privileges of a central administrator when using the Shopping Web Console except that all activities and configurations are restricted to the computers defined in the Computer Category
- Select branch applications for publishing to their associated branches
- Define branch approvers for the branch
- Select specific branch approvers for the branch application
- Act as deputies for branch approvers for any branch application shopped for
Branch approvers can approve or deny requests of specific branch applications.