Our packaging service helps customers prepare applications for deployment without the need for full-time in house application packaging staff, or acts as additional resource to in house packagers at critical times.
The E-Packaging service is an off site packaging service. Using experts in this field who have experience dating back to the introduction of Microsoft's Windows Installer technology.
The E-Packaging service is broken down into 5 stages, each of which is critical to successful implementation.
Application Profiling
The profiling of each application is the key input to the packaging process and the quality of this input will determine the ultimate quality of the final packages.
In addition to defining the contents of each package the profiling documentation provides some disaster recovery protection and also a simple reference for future versions
of the application when the time comes to patch or upgrade the package.
The profile for a package is a document that details everything about the application. The business user and technical contact are required to fill out a questionnaire
regarding the application and must agree with each others answers. After this a full installation of the software is performed on a target workstation and this is documented
in detail. The application can then be tested by the business user to prove that it is fit for purpose and this testing is also documented for future stages of the process.
Packaging
The packaging process takes the application and repackages it into MSI format. This is done by following the profiling documentation and repeating the installation steps that
were performed by the technical contact.
Once the raw package has been created it then goes through additional modifications to apply the packaging standards and industry best practices. Finally the package is validated
using the Microsoft validation tools and any validation errors are resolved. Having resolved these errors the package can then be deployed to a test machine and the profiling test
can be performed to ensure that application functionality has not been changed by the packaging process.
Conflict Analysis
Each package will have to coexist with several others when deployed into the target environment. Due to what is commonly termed 'DLL Hell' there are many applications which have
problems coexisting in their default installation state. Fortunately Microsoft have provided a solution to this DLL problem by the use of Component Isolation. This technology can
be used to isolate potentially conflicting components from each other allowing these applications to coexist on the same machine.
Other type of conflicts can occur between packages such as registry keys set to different values or data files being installed to the same location. In addition the desktop build
itself can conflict with a package and the introduction of Windows File Protection has caused as many new problems as it has solved when trying to package legacy software.
To resolve these issues the packages can be loaded into a database and any conflicts can quickly be identified and resolved before the package gets deployed. It is important to
note that any changes made to a package due to conflicts result in the package having to go through the profiling test again to ensure that there are no functionality changes to the application.
Quality Assurance
To ensure that the package is fully functional both technically and in terms of business functionality it goes through a series of tests. The tests must be performed by a qualified packager,
but not the packager who created the package. These tests include:
Packaging Standards checks : These ensure the packaging standards have been applied and that all properties and settings have been set correctly for the environment and best practices have been followed.
Package Validation checks : These ensure that all package validation errors have been resolved or else documented as per the packaging standards.
Deployment checks : These ensure that the package can be deployed via the deployment technology, that it passes the profiling test to prove it is fit for purpose, and also that it can be uninstalled via the deployment technology.
Once these tests have been completed the package can be passed back to the business for the final UAT tests.
User Acceptance testing (UAT)
To ensure the application is fully functional and fit for purpose after it has gone through the packaging process the package must be tested by the Business User as detailed in the audit and profiling documents.
The package must first pass the test described in the profiling document. In addition any other tests may be performed by the Business User to ensure the package functions correctly. At this point the package must
be signed off by all parties and passed to the deployment team for delivery into the environment.