Software complexity can be defined as the degree of difficulty in analysis, testing, design and implementation of software.