auditing software development