Get in Touch

Course Outline

QA/CI

  • Understanding Quality Assurance (QA)
  • Understanding Continuous Integration (CI)
  • The costs associated with software development, refactoring, and error correction
  • Identifying and comprehending the project scope
  • Organizational benefits

DDD

  • Software development driven by business requirements and Domain-Driven Design (DDD) assumptions
  • Bridging communication gaps between IT and Business
  • The Domain Model

Best Practices

  • Applying the KISS and DRY principles
  • Adhering to coding standards
  • Building reusable code through Object-Oriented Programming (OOP) and design patterns
  • Identifying and reducing cyclomatic complexity

Software Metrics

  • Weighted Methods per Class
  • Response For a Class
  • Depth of Inheritance Tree
  • Coupling Between Objects
  • Lack of Cohesion of Methods
  • Number of Children
  • Cyclomatic complexity
  • Class Metrics
  • Model Metrics
  • Usage Metrics

Software Testing

  • Key questions: What, when, and how to test?
  • White-box and black-box testing methods
  • The role of testing in agile methodologies
  • Challenges regarding TDD and potential project cost implications
  • Unit testing
  • Behavioral testing
  • Functional testing

Refactoring

  • Defining refactoring
  • Technical debt
  • Identifying code smells
  • Refactoring patterns

Documentation

  • The role of documentation in agile methodologies
  • What aspects need documentation?
  • Types of documentation
  • Documentation in the context of agile: Working software over comprehensive documentation
  • XMI standards
  • Automated documentation generation

CI Tools and Environment

  • Overview of CI tools and environments

Agile and CI/QA

  • Planning and incremental development
  • Embracing change
  • Short iterations
  • Interdisciplinary teams
  • Extreme Programming and Code Reviews
  • Valuing individuals and interactions over processes and tools

Summary

  • Discussion
  • Q&A
  • Getting started with implementation

Introduction to Testing

  • Functional Tests
  • Regression Testing
  • User Acceptance Testing (UAT)
  • Unit Tests
  • Usability Tests
  • Non-functional Tests
  • Performance Testing
  • Load Testing
  • Stress Testing
  • Soak Testing

To Test or Not to Test

  • Decision-makers for testing scope
  • The cost of testing irrelevant items
  • Calculating ROI (risk analysis)
  • The role of the Test Manager

The Testing Process

  • Testing as a process and strategy
  • Identifying testing requirements
  • Gathering requirements (use cases, user stories)
  • Scoping (selecting and prioritizing scenarios)
  • Test design
  • Data preparation
  • Environment setup
  • Creating or recording tests
  • Executing the test
  • Analysis and reporting
  • Conclusions and improvements
  • Knowing when to stop

Product Owner and Tests

  • The customer representative and test prioritization
  • Prioritizing tests
  • Writing effective stories for UAT
  • Acceptance criteria
  • Group exercise: Deriving customer requirements, writing stories, and creating tests
 28 Hours

Number of participants


Price per participant

Testimonials (1)

Upcoming Courses

Related Categories