SDEV Course Listing

Building Secure Python Applications (SDEV 300, 3 Credits)
Prerequisite: CMIS 242, CMIS 215, or CMIS 225. A hands-on study of best practices and strategies for building secure Python desktop and web applications. The objective is to design and build Python applications that are resistant to common security threats. Topics include syntax, data structures, style guides, data munging, web application frameworks, and the use of secure coding tools and processes to guard against application vulnerabilities.

Secure Programming in the Cloud (SDEV 400, 3 Credits)
Prerequisite: SDEV 300. A hands-on study of programming secure applications in the cloud. The goal is to design and build applications in the cloud while implementing appropriate security policies. Topics include cloud computing models, risks and security challenges of programming in the cloud, and data security.

Risk Analysis and Threat Modeling (SDEV 455, 3 Credits)
Prerequisite: SDEV 360. An examination of the risks and threats associated with application development. The objective is to identify valuable assets, create system architecture diagrams, decompose applications, identify and prioritize threats, and document results in a threat model. Topics include security requirements and objectives, threat identification and mitigation, and calculating risk.

Software Security Testing (SDEV 460, 3 Credits)
Prerequisite: SDEV 425. A hands-on study of exploits, attacks, and techniques used to penetrate application security defenses and strategies for mitigating such attacks. The objective is to apply appropriate methodologies for software penetration testing to identify application weaknesses and logic flaws and to test and create scripts for exploitation and discovery. Topics include web architecture, application infrastructure, reconnaissance, discovery, mapping, and exploitation.