{'fraction_non_alphanumeric': 0.015606242496998799, 'fraction_numerical': 0.0, 'mean_word_length': 5.220149253731344, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 1, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Fault Causing Characteristics in Software Development

The development of a piece of software can be a lengthy and complex process. The ultimate goal is to produce high quality software, and in so doing the company must establish a careful and detailed strategy for the detection and removal of irregularities which may be introduced into the software at any stage of development. In order to achieve this goal, most companies use a quality control system which involves the compilation of an extensive database of software problem reports. An SPR (software problem report) results from the detection of a fault by testers for example by the running of test cases (scripts) covering the software specifications. A typical SPR contains information on the properties of the defects underlying the reported problem. These may include : the present state of problem, time effort necessary to treat the problem, severity, priority, functional area, individuals involved in the development and quality assurance process, and other indicators of complexity of that part of the code where the problem originated. This research involves a detailed analysis of the evolution of the development process corresponding to a collection of similar software projects in a local software company. One goal is to discover (by the use of multivariate statistical techniques such as factor analysis and/or classification analysis) common patterns in the problem reports in order to group them into clusters described by similar causes. Other objectives include analyzing times to both find and fix faults, which in turn might suggest improvements in the process of software development.