Page 102 - SOFTWARE TESTING & QUALITY ASSURANCE
P. 102
Unit 7: Documentation and Security Testing
If the documentation of the software is good, then it contributes to the product in the following ways:
(a) It Improves the Software’s Usability: The documentation helps the user to know how the
software should be used. If it communicates the required information effectively, then the
user will be able to use the software easily without much difficulty.
(b) It Improves the Software Reliability: When the user reads the documentation he/she will
come to know about the various features and applications the software has. The user will
read the documentation and judge the software functionalities based on the information
provided. Any errors in the documentation will certainly result in poor reliability.
Therefore, it is very important to test the documentation against the software to find errors
in it.
(c) It Decreases the Product Support Cost: The cost incurred on the error found by the
customer is 10 to 100 times more than the cost incurred to find the same error before it is
released to the market. If the documentation fails to communicate the information clearly to
the users, then the user will be confused and will face problems while using the software.
Moreover, the organization which has developed the software has to provide customer
support to resolve the problems that the customer is facing – which proves to be expensive.
Therefore, in order to overcome such problems, good documentation must be provided
with the software product. This documentation helps the customers to easily understand
and use even the most difficult application or feature of the software.
Documentation testing checks for the correctness of facts and figures mentioned in the documentation.
Testing must make sure that all the instructional steps are explained clearly and effectively. The testing
must also check whether or not the documentation meets all the requirements of the end user. Thus,
documentation testing helps in finding errors in the documentation and helps in providing correct,
accurate, and effective information to the users. It improves customer satisfaction
7.2 Security Testing
Security testing must not be confused with safety testing. The aspect of security deals with how well
the software is protected from external elements such as hackers who make use of virus to affect the
normal operation of the software.
A type of computer viruses named resident virus such as Randex, CMJ, Meve,
and MrKlunky attack the RAM memory of the system. From RAM, it affects the
normal operation of the entire operating system. It will corrupt the files
currently used by the operating system.
A tester who is performing a software security test must apply risk based approach to find the bugs in
the software architecture and design. The testers must have the mindset of an attacker (hacker) to find
bugs related to software security. This requires identifying the risks that the software is prone to during
an attack and creating test cases based on the risks identified. Such test cases will enable the tester to
focus on a particular area of code where the possible attack can be successful.
Banks use smart card technology to overcome fraud and misuse of account
holder’s freedom. These smart cards use the Crypto System to carryout
transactions and verify the identities of the cardholder and the bank. The card
holder information and account have to be very well protected, as the
transactions happen online and there is always a possible risk of the system
being hacked or a virus attack. If any such incident happens, the bank will lose
valuable information and also its account holder’s money. Testing for possible
risk in the software will help to overcome and stop any attack on the software
and prevent theft of information.
Software security testing tests the software behavior when the software is attacked by some external
element. Sometimes, software failure occurs without any external interference. This may occur due to
weak design or coding. Therefore, software security aims to protect the software from any such failures.
Any software designed with poor logic is prone to external attack from hackers.
LOVELY PROFESSIONAL UNIVERSITY 95