Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
Duration 21 hours
Course Outline
1. Concepts and Scope of Static Code Analysis
- Definitions: static analysis, SAST, rule categories, and severity levels
- The role of static analysis in a secure SDLC and risk coverage
- How SonarQube integrates with security controls and developer workflows
2. SonarQube Overview: Features and Architecture
- Core services, database, and scanner components
- Quality Gates, Quality Profiles, and best practices for implementation
- Security-related features: vulnerabilities, SAST rules, and CWE mapping
3. Navigating the SonarQube Server UI
- Tour of the Server UI: projects, issues, rules, measures, and governance views
- Interpreting issue pages, traceability, and remediation guidance
- Generating and exporting reports
4. Configuring SonarScanner with Build Tools
- Setup of SonarScanner for Maven, Gradle, Ant, and MSBuild
- Best practices for scanner properties, exclusions, and multi-module projects
- Generating necessary test data and coverage reports for accurate analysis
5. Integration with Azure DevOps
- Configuring SonarQube service connections within Azure DevOps
- Incorporating SonarQube tasks into Azure Pipelines and PR decoration
- Importing Azure Repos into SonarQube and automating analysis processes
6. Project Configuration and Third-Party Analyzers
- Project-level Quality Profiles and rule selection for Java and Angular
- Managing third-party analyzers and plugin lifecycles
- Defining analysis parameters and parameter inheritance
7. Roles, Responsibilities, and Secure Development Methodology Review
- Segregation of roles: developers, reviewers, DevOps, and security owners
- Creating a roles & responsibilities matrix for CI/CD processes
- Reviewing and recommending improvements to existing secure development methodologies
8. Advanced: Adding Rules, Tuning, and Enhancing Global Security Features
- Utilizing the SonarQube Web API to add and manage custom rules
- Adjusting Quality Gates and enforcing automated policies
- Hardening SonarQube server security and access control best practices
9. Hands-on Lab Sessions (Applied)
- Lab A: Configure SonarScanner for five Java repositories (including Quarkus where applicable) and analyze the results
- Lab B: Configure Sonar analysis for one Angular front-end application and interpret the findings
- Lab C: Comprehensive pipeline lab—integrate SonarQube with an Azure DevOps pipeline and enable PR decoration
10. Testing, Troubleshooting, and Report Interpretation
- Strategies for test data generation and coverage measurement
- Addressing common issues and troubleshooting scanner, pipeline, and permission errors
- Reading and presenting SonarQube reports to both technical and non-technical stakeholders
11. Best Practices and Recommendations
- Selecting rule sets and strategies for incremental enforcement
- Workflow recommendations for developers, reviewers, and build pipelines
- Roadmap for scaling SonarQube in enterprise environments
Summary and Next Steps
Requirements
- A solid understanding of the software development lifecycle
- Experience with source control and fundamental CI/CD concepts
- Familiarity with Java or Angular development environments
Audience
- Developers (Java / Quarkus / Angular)
- DevOps and CI/CD engineers
- Security engineers and application security reviewers
Testimonials (1)
Engaging, and hands on practise.