The value of ASI

I heard many times from people who are seeing the WDK for the first time, "I don't understand the value of ASI."  It is obvious we need to have a document that explains that clearly.  The article below will be published in the next edition of our TAP newsletter.  Please let me know if it hits the mark...or doesn't.


The Automated Software Installer (ASI) is your complete solution for automated deployment of Windows in test environments.  Unlike other imaging tools and deployment tools, ASI was created by and optimized for testers and developers working in a product development environment.  ASI is included with the Windows Driver Kit (WDK) and integrated with the Driver Test Manager (DTM) and Windows imaging technology, a.k.a. Ximage, to deliver a completely automated solution.  With ASI you’ll be able to dramatically increase the efficiency of your testing resources. 



Common Scenarios:


With ASI you’ll be able to run every test on a clean install of the operating system (OS) with zero additional labor.  Simply take an existing job and add an ASI task to install the OS and every time you run that job ASI will install a clean OS before starting the test, automatically.  Since you can schedule jobs against a single system, a pool of systems or every client attached to your controller, you can deploy Windows to an entire lab of systems by simply scheduling the job.


With ASI there is no reason to constrain your testing based on OS because installing each OS requires no additional labor.  You could, for example, could create a single job with multiple ASI tasks.  The first task installs Windows XP Home and runs tests.  The second task installs Windows XP Pro and runs test.  The third task installs Vista and runs the tests, etc.  For a developer who needs to perform unit tests on multiple operating systems by has only one or two test systems this solution eliminates cumbersome disk swapping and image management plus its fully automated so the developer can do more productive work while being assured of test validity because the tests are always running on a clean OS.


Because ASI is a server based solution you’ll be able to make it available as a service to everyone in the organization.  One person will post builds to a single location and the server will manage their deployment for you.  For example, testers may create a job which uses ASI to install the latest build of Vista prior to running tests.  When a newer build of Vista is placed on the server, ASI automatically starts using that newer build.  The testers don’t have to modify their jobs or even be aware that a new build is posted.  An OEM could do the same thing with the images they’re developing and shipped.  When the image is updated simply put it on the server and ASI will begin using the new image without any action on the part of your testers or developers.  In addition to the efficiency offered by centralized management, the ASI server enables you to ensure all your testers and developers are doing their validation on the correct OS, installed in the same way.


Some organizations may prefer to use imaging for testing.  ASI is integrated with the Windows Imaging technology, which is now built into Windows Vista, enabling you to create and restore disk images from ASI and the DTM.  Windows Imaging enables you to create file based images which are updatable and use Single Instance Storage and compression to store images in a highly efficient manner.  The Ximage tool was developed originally to enable OEMs to create and manage images created using Windows Imaging.  It is now included with the Windows Driver Kit.  Also, you can use Sysprep to create generic images which are stripped of all machine specific information and can be installed on any system with a matching hardware abstraction layer.  If you’re testing requirements specify specific settings, applications and drivers this enables you to create one image and make it available to everyone for testing, ensuring test validity and eliminating labor.  Also, image restores are much more efficient than existing Windows XP and Server 2003 setup.


ASI also enables you to add your drivers to Windows.  For example, put the latest build of your driver on a share which is accessible to your test clients.  Add a single command to your job and it will install that driver exactly as though it were on the Windows CD.  When you get a new build of the driver simply put the new build on the share and run the job again.  It will install a clean OS and your new driver then run your tests.



More Information:


The WDK Automated Deployment Tools directory on the WDK CD contains a wealth of information on ASI.  Pick the level at which you’d like to start.


ASI 12-Step Program:  This document provides a lab which you should be able to complete within an hour.  At the end of the hour you will have installed an OS using ASI and see the benefits of this solution.


WDK Automated Deployment Tools Quick Start Guide:  This is a step-by-step guide to setting up your ASI server and Ximage and getting the tools working in your lab with the DTM.


ASI CHM: This is the ASI help file which contains detailed information on every ASI command, setting up the server and clients, using ASI with the DTM and using ASI with Ximage.