Final Exam: Programming Analyst will test your knowledge and application of the topics presented throughout the Programming Analyst track of the Skillsoft Aspire Programmer to API Developer Journey.
compare API testing with traditional software testing features
compare Rapid Application Development with the Agile framework
compare Rapid Application Development with the Traditional Waterfall Development Live Cycle
compare the differences between storyboarding and prototyping
create a REST API web service
describe best design practices for working with REST API error handling
describe best design practices for working with REST API partial responses
describe best design practices for working with REST API resources
describe best practice for generating REST API document and review examples
describe constraints that can impact REST API development
describe different methods and programming languages for consuming REST API web services
describe how automation testing can be used to perform functional testing
describe how Continuous Delivery can be used to deliver software at a higher velocity
describe how Continuous Deployment can be used to deliver software at a higher velocity
describe how Continuous Integration can be used to deliver software at a higher velocity
describe how design patterns are effectively used in test automation
describe how REST APIs are used by reviewing real-world examples
describe how the CI/CD Pipeline can be used to deliver software at a higher velocity
describe how to use OpenAPI to create REST APIs
describe how unit tests can be effectively used in automated testing
describe methods for creating reusable API code
describe some bad practices of Human-centered design and how to prevent these practices
describe strategies for designing API web services
describe the best practices for naming and versioning API URIs
describe the best practices of human-centered design
describe the best practices to follow when developing and designing REST APIs
describe the concept of human-centered design and how it differs from traditional design
describe the considerations and characteristics of Rapid Application Development
describe the differences between Continuous Integration, Delivery, and Deployment
describe the importance of automated testing and some of its benefits
describe the key concepts of human-centered design
describe the key concepts of Rapid Application Development
describe the main principles of human-centered design
describe the principles of the Agile software process
describe the Rapid Application Development Model and its advantages and disadvantages
describe the Richardson Maturity Model to identify the design maturity of REST APIs
describe the roles and responsibilities of the software developer when performing automated testing
describe the tasks of the penetration testing blue team
describe the tools available with Swagger including the API editor, the API code and client generator, the REST API documentation tool, and the REST API testing tool
describe the traditional Waterfall System Development Life Cycle
describe what needs to be considered during API development
describe what penetration testing is
identify a penetration testing team structure
identify the appropriate tool used for developing the RESTful APIs
identify the importance of developer contributions to penetration testing
identify the stages of penetration testing
identify types of penetration testing
list the different methods of penetration testing
recognize best practices on how to turn requirements into software specifications that are complete, concise, correct, consistent, testable, and unambiguous
recognize methods for gathering stakeholder demands and turning them into requirements
recognize techniques for identifying requirements
recognize the appropriate types of stakeholders to help determine software requirements
recognize the differences between penetration testing and developers
recognize the differences between White box, Black box, and Grey box penetration testing
recognize the importance of penetration testing
recognize the key elements that make up the requirements engineering process
recognize tips and tricks to identify hidden requirements
recognize where penetration testing falls within the software development lifecycle (SDLC)