Modern Software and Systems Engineering
Overview
This course covers the current concepts of software and systems engineering in the modern enterprise. Students will review major software development methodologies including classic SDLC/Waterfall, Rapid Development, Agile, Continuous Integration/Continuous Delivery (CI/CD) and DevSecOps. Best practices in software design and implementation with a view toward recognizing and avoiding weakness and vulnerabilities in software is a key part of this course. Test Driven Development (TDD) and Business Driven Development (BDD) are discussed, along with QA testing, code quality and vulnerability scanning, configuration management, and maintenance are also covered. We will also discuss issues related to outsourcing and working in cloud environments.
Duration
2 Days
Who Should Take This Course
Audience
This course is intended for: Software Developers, System Architects, Systems & Business Analysts, Security Analysts, Security Managers, Systems Testers, Project / Program Managers, Product Owners, and IT Leaders & Managers.
Prerequisites
Understanding of IT System concepts.
Course Outline
Modern Software and Systems Engineering
- The Software Engineering Process
- SDLC/Waterfall Model
- Project Roles in Software/System Development
- Requirements & Specifications
- Software Design and Implementation
- Source Code Control
- Software Testing, TDD and BDD
- Release & Configuration Management
- System Reliability and Maintenance
- Secure Programming & Information Security Concepts
- Project Management Concepts
- Agile & Scrum
- Business & Product Owner
- Human Centered Design and User Experience (UX) Best Practices
- Modern Cloud Architectures
- DevOps and DevSecOps
- Continuous Integration/Continuous Delivery (CI/CD)
- Vulnerability Scanning & Release Processes
- System Audit & Validation