It becomes very important to carry out installation
testing towards the end of the release process. It is very important to subject
a software system or application to installation testing so that it can be
released without any hesitation to the customers.
One can make sure without
installation testing that the software system or application will successfully
install on the user’s system in the first go itself! The user might need to
install the software system or application again and again which in turn might
frustrate the user. You will loose customers as a consequence of this.
Therefore perform installation testing becomes absolutely necessary.
In this
article we have discussed about the need for optimizing the installation
testing and how to optimize it. by the optimization of the installation testing
we mean modifying it further so that
some aspects of it use less resources and work more efficiently.
What is the need to optimize?
- When
you optimize a testing process you can run it more quite rapidly and that too
it uses very less memory then.
- The optimization though has been named as
“optimization”, it can never produce a truly optimal system.
- The amount of time
taken by a test case of the installation can be reduced by making it consume
more memory.
- In cases where the memory
is limited, slower algorithms can be used.
- While optimizing the installation
testing one should keep in mind that there is no such design that fits all the
test cases.
On what levels installation testing is optimized?
The installation testing process much like the other processes is
optimized through the following number of levels:
Design Level:
- This is the highest level of the above mentioned process.
- Design is the
best aspect that can be optimized to utilize the resources in a much
better way.
- The implementation of the optimized design can be made more
efficient by using efficient algorithms which in turn have been benefited
from code of good quality.
- It is obvious for the architecture of the test
design to have an overwhelming affect on its performance.
- In some cases
optimization process may also involve the following:
(a) More elaborate algorithms
(b) Special tricks
(c) Special cases
(d) Complex trade offs
- A fully
optimized installation testing process becomes difficult to comprehend and may
also house more errors than the un- optimized processes.
Source code Level:
- This step involves rooting out the bad quality code from the test
cases and therefore it also improves performance.
- When the malfunctioning code
is removed, the obvious slow downs are avoided.
- However, it is possible
that any further optimization made to that test case may decrease its
maintainability.
- But, today there are available what are called
“optimizing compilers”.
Compile Level:
- At
this stage, it is ensured by the optimizing compiler that the test case is
optimized to such a level at which the test case can be compiled by the
compiler.
Assembly Level:
- This is the lowest level of optimization process and involves taking
advantage of the full repertoire of system instructions.
- This is the
reason why most of the operating systems use the embedded systems are
written in assembly code.
- Many of the test cases are compiled from a high
level language to assembly language and from there it is manually
optimized.
Run time:
- Run
time optimization is needed and are performed by the assembler programmers
and just in time compilers which exceed the capability of static
compilers.
Two types of optimizations can be performed on the
installation testing process namely:
- Platform
dependent optimization (uses specific properties of one platform) and
- Platform
independent optimization (effective on all platforms)
No comments:
Post a Comment