What are the steps required for deploying a software package via Active Directory / GPO?
Create an MSI package that requires no user input at all. This may require you to repackage a vendor-supplied MSI file.
Place this MSI file in a location that all users can access.
Create a new GPO.
Under "Computer Configuration" -> Software Settings is a "Software Installation" section.
Right click on "Software Installation" and pick New Package
Browse to the location of the MSI on a UNC path. Do not use drive-letter.
Select a Deployment Type of Assigned if you want it pushed to all workstations assigned to the GPO, or Published if you just want it available in Add/Remove Programs.
Under modifications add any transform files (.MST files) needed. Do this now, you will not be able to add any transforms once the create process is completed.
Associate the GPO with the right group of workstations.
On an associated workstation log out and back in again twice: first for the policy to apply (learn of the new GPO) and then execute (app installs only happen after a reboot).
That should be enough to get you going. Test first, learn how it works, and then move to production.
Deployment failures can cause repeated installation (and associated instant roll-back) of the same package every time a user logs in. If the application is very large, this can mean major delays in login times. These errors are logged to the workstation's event log.
You didn't specify which version of Windows your domain controllers are using. However, the steps are basically the same for Windows Server 2003 and Windows Server 2008. Microsoft knowledge base 816102 explains the steps you need to follow.
A great resource with many MSI's built already, and a huge knowledge base: AppDeploy.com