Match the roles to the task they perform.

gather requirements
create software framework
identify errors in the software
develop program code for software

Role

software architects
business analysts
programmers
testers